解决方案 »

  1.   

    InvRegistry.RegisterInterface(TypeInfo(Java7WS), 'http://ws.hs/', 'UTF-8');
      InvRegistry.RegisterDefaultSOAPAction(TypeInfo(Java7WS), '');
      //InvRegistry.RegisterInvokeOptions(TypeInfo(Java7WS), ioDocument);
      RemClassRegistry.RegisterXSClass(serInfo, 'http://ws.hs/', 'serInfo');
      RemClassRegistry.RegisterSerializeOptions(serInfo, [xoLiteralParam]);
      

  2.   

    InvRegistry.RegisterInterface(TypeInfo(Java7WS), 'http://ws.hs/', 'UTF-8');
      InvRegistry.RegisterDefaultSOAPAction(TypeInfo(Java7WS), '');
      //InvRegistry.RegisterInvokeOptions(TypeInfo(Java7WS), ioDocument);
      RemClassRegistry.RegisterXSClass(serInfo, 'http://ws.hs/', 'serInfo');
      RemClassRegistry.RegisterSerializeOptions(serInfo, [xoLiteralParam]);不要注销中间那一句,那句是关键,没有那个传递的参数就是空的,我用D7调用VS2005和VS2008写的Web服务就出现过这种问题,最后加了这一句就OK了!
      

  3.   

    使用这句话,就直接报错了,错误信息如下:Project Project1.exe raised exception class ERemotableException with message 'java.lang.NullPointerException'. Process stopped. Use Step or Run to continue.
      

  4.   

    InvRegistry.RegisterInvokeOptions(TypeInfo(Java7WS), ioDocument);
    这一句中这个ioDocument还有别的值,VS是这个,但是Java的不知道是那个,这个弄对了估计就没有问题了,从网上查一下,我也忘了!
      

  5.   

    REST多好,对象什么的,太局限了
      

  6.   

    java不支持delphi传递的ioDocument格式,需要把
    InvRegistry.RegisterInvokeOptions(TypeInfo(Java7WS), ioDocument);
    改为:
    InvRegistry.RegisterInvokeOptions(TypeInfo(Java7WS), ioHasNamespace);