Java 在.NET中处理JAXB@XMLIDRef

Java 在.NET中处理JAXB@XMLIDRef,java,.net,web-services,visual-studio,jax-ws,Java,.net,Web Services,Visual Studio,Jax Ws,我正在使用jax-ws编写一个web服务。web服务的一个方法返回bean,其中包含对其父对象的引用。为了防止循环引用,我在bean中使用JAXB@XMLID和@XMLIDRef注释 然后我为java客户机生成代理类,一切正常,id解析为对象属性。但我在Visual Studio for.NET中生成web服务客户端代理,它将IDREF解释为字符串属性,而不是对象 是否可以通过解析idrefs从.NET的wsdl生成代理类?现成的Microsoft工具无法为您完成这项工作。您必须要求Micros

我正在使用jax-ws编写一个web服务。web服务的一个方法返回bean,其中包含对其父对象的引用。为了防止循环引用,我在bean中使用JAXB@XMLID和@XMLIDRef注释

然后我为java客户机生成代理类,一切正常,id解析为对象属性。但我在Visual Studio for.NET中生成web服务客户端代理,它将IDREF解释为字符串属性,而不是对象


是否可以通过解析idrefs从.NET的wsdl生成代理类?

现成的Microsoft工具无法为您完成这项工作。您必须要求Microsoft更改

wsdl生成工具。例如:

  • wsdl.exe:
  • svcutil.exe:

在最近的一个项目中,我不得不克服这些工具的缺点,并使用一个基本脚本修改生成的代码,以修复未按需要的方式生成的代码(在本例中,与Java端wsdl生成不兼容)

看来.NET更喜欢id/ref属性组合。看见所以.NET不喜欢Java方式,Java也不喜欢.NET方式;至少是开箱即用(据我所知)。我对此也很感兴趣,因为跨平台引用似乎是一个相当关键的功能。@Andrew White感谢您的引用。我坐在这里思考我是如何一直避免这种互操作混乱的。我通读了该链接,该链接指向以下链接:。也许问题可以归结为:所描述的技术是否足以允许.NET/Java互操作?请详细说明您是如何得出结论的。