Java 在Web服务上调用jni4net时出错,URI方案不是;文件";

Java 在Web服务上调用jni4net时出错,URI方案不是;文件";,java,.net,web-services,jni4net,proxygen,Java,.net,Web Services,Jni4net,Proxygen,我正在使用jni4net,我正在读取java应用程序中的.NETDLL,当我直接在主方法上运行时,它就会工作。以下是一个例子: public static void main( String[] args ) throws IOException { Bridge.setVerbose(true); Bridge.init(); File dllFile2 = new File("Cripto.j4n.dll"); Br

我正在使用jni4net,我正在读取java应用程序中的.NETDLL,当我直接在主方法上运行时,它就会工作。以下是一个例子:

public static void main( String[] args ) throws IOException {       
    
    Bridge.setVerbose(true);
    Bridge.init();
    File dllFile2 = new File("Cripto.j4n.dll");
    Bridge.LoadAndRegisterAssemblyFrom(dllFile2);
    ...
    ...
  }
但是,当我尝试从下面的Web服务运行时

@GET
@Path("/conect")
public String conect() throws IOException { 
    
    Bridge.setVerbose(true);
    Bridge.init(); //the error is triggered at this point
    ...
    ...
}

已发布以下错误:

Caused by: java.lang.IllegalArgumentException: URI scheme is not "file"
    
我已经尝试指向dll Cripto.j4n.dll的路径,指示绝对路径,但它不起作用,下面是我的尝试示例:

Bridge.init(new File("C:\\apps\\MyApp\\Cripto.j4n.dll"));
Bridge.init(new File("Cripto.j4n.dll")); //also tried this way

无论如何,我需要从webService上的.dll进行调用,服务器是wildfly 9,我该怎么做?有什么提示吗?

错误表明它需要一个
文件格式的路径:
,请在此处查看答案:此处:

我找到了解决方案

我直接指向.dll文件,而且,我错误地指向了.dll,他在寻找“jni4net.n-0.8.5.0.dll”而不是“Cripto.j4n.dll”(这是我创建的文件),因此解决方案是指出“jni4net.n-0.8.5.0.dll”所在的文件夹如下:

Bridge.init( new java.io.File("C:\apps\MyApp")); 

我没有报告该文件,而是报告了它所在的文件夹“jni4net.n-0.8.5.0.dll”

我试图按照这些示例中所示的那样做,但没有成功:(…但我有一点怀疑,因为当我使用“publicstaticmain”方法并调用Bridge.init()它可以工作,当我调用运行在wildfly上的系统并从Web服务调用时,它可以工作吗?