当我尝试使用javonet从java调用.net方法-“create”时,我得到一条消息,该方法不存在,因为我没有传递正确的参数-
DocuWare.Platform.ServerClient.ServiceConnection
Create(System.Uri,
System.String,
System.String,
System.String,
System.Nullable`1[DocuWare.Platform.ServerClient.DWProductTypes],
System.Net.Http.HttpMessageHandler,
System.Net.Http.Headers.ProductInfoHeaderValue[]
)
我的代码是-
NObject objUri = Javonet.New("Uri","http://<IP-address>/DocuWare/Platform");
NType serviceConnectionClass = Javonet.getType("DocuWare.Platform.ServerClient.ServiceConnection");
NObject objProductInfoHeaderValue = Javonet.New("System.Net.Http.Headers.ProductInfoHeaderValue","DocuWare+.NET+API+Test+Client", "1.0");
NObject[] objProductInfoHeaderValueArray = new NObject[] {objProductInfoHeaderValue};
NType typeHttpMessageHandler = Javonet.getType("System.Net.Http.HttpMessageHandler");
NType typeNullable = Javonet.getType("System.Nullable");
serviceConnectionClass.invoke("Create",objUri,"admin","admin","<company-name>",typeNullable,typeHttpMessageHandler,objProductInfoHeaderValueArray);
我的主要问题是不知道如何为-
DocuWare.Platform.ServerClient.DWProductTypes
System.Net.Http.HttpMessageHandler
System.Net.Http.Headers.ProductInfoHeaderValue[]
我不认为这是一个问题,但我需要得到过去这个问题之前,我可以执行一个概念证明
以下是docuware平台的链接-
http://help.docuware.com/sdk/platform-eagle/html/66b2ed1e-2aef-452a-97cd-5014bbf0242b.htm
我正在使用tomcatappserver和jsp运行测试。我知道.net.dll正在被找到,javonet库正在被正确激活。
提前谢谢你的帮助。
1条答案
按热度按时间vuv7lop31#
通常,对于可为null的参数,您可以传递常规目标类型(在本例中是“dwproducttypes”的某个枚举值),或者如果要传递null,只需传递“null”;
所以你应该打电话:
dwproducttypes的所有可能值都可以在此处找到:http://help.docuware.com/sdk/platform/html/t_docuware_platform_serverclient_dwproducttypes.htm
在这里您可以找到有关使用枚举的更多信息:https://www.javonet.com/quick-start-guide/#enums_how_to_work_with_enums
或传递空值:
对于productinfoheadervalue数组,您应该创建noObjects的java数组并将其作为参数传递: