On Sat, 7 Feb 2004, Aleksander Slominski wrote:
  
> you need to make sure that SoapRMI 1.1 jar file is also on CLASSPATH
> 
Ok Alek, I made simply a mistake when I wrote the name of the Soap RMI 
provider in the org.apache.wsif.spi.WSIFProvider file. 

> the reason it does not work is quite simply fact that probably nobody 
> used SoapRMI WSIF provider for long time.
> 
> 
> it was meant initially to test that WSIF can support multiple SOAP 
> providers as initially we had only ApacheSOAP so quickly added SoapRMI 
> (i wrote SoapRMI/XSOAP so i know it inside-out and it was very easy for 
> me). since then we have AXIS provider so need for SoapRMI provider that 
> is based on SoapRMI 1.1 that was heavily RPC based is not bug (XSOAP 1.2 
> supports RPC literal document/message model ...).
> 
> do you have any particular reason you wan to use SoapRMI 1.1 (it is over 
> two years old!)?
> 

In general I am evaluating the performance of different Java SOAP 
implementation in case of transmission of big numeric arrays using WSDL 
like software component description.
I used SoapRMI 1.1 because I read in the XSOAP site that the actual 
version is not stable. However, I put in my classpath the most recent 
XSOAP jar file, xsoap-1.2.29-B1.jar.
I try to use XSOAP only (without WSIF) and it works fine and is really 
faster than Apache AXIS.

Using WSIF I got still this exception:

Exception in thread "main" org.apache.wsif.WSIFException: Could not 
determine local java type for 
http://130.251.12.11:8080/axis/services/FloatArray:ArrayOf_xsd_float; 
nested exception is: 
        soaprmi.mapping.XmlMapException: no mapping for 
encodingStyle=http://schemas.xmlsoap.org/soap/encoding/ 
uri=urn:FloatArrayService localName=ArrayOf_xsd_float
        at 
org.apache.wsif.providers.soap.soaprmi.WSIFOperation_SoapRMI.prepare(WSIFOperation_SoapRMI.java:224)
        at 
org.apache.wsif.providers.soap.soaprmi.WSIFOperation_SoapRMI.<init>(WSIFOperation_SoapRMI.java:137)
        at 
org.apache.wsif.providers.soap.soaprmi.WSIFPort_SoapRMI.<init>(WSIFPort_SoapRMI.java:175)
        at 
org.apache.wsif.providers.soap.soaprmi.WSIFDynamicProvider_SoapRMI.createDynamicWSIFPort(WSIFDynamicProvider_SoapRMI.java:128)
        at 
org.apache.wsif.base.WSIFServiceImpl.createDynamicWSIFPort(WSIFServiceImpl.java:413)
        at 
org.apache.wsif.base.WSIFServiceImpl.getPort(WSIFServiceImpl.java:484)
        at 
org.apache.wsif.base.WSIFServiceImpl.getPort(WSIFServiceImpl.java:432)
        at xdr.client.dynamic.CFloatSoap.main(CFloatSoap.java:92)
Caused by: soaprmi.mapping.XmlMapException: no mapping for 
encodingStyle=http://schemas.xmlsoap.org/soap/encoding/ 
uri=urn:FloatArrayService localName=ArrayOf_xsd_float
        at 
soaprmi.mapping.XmlJavaMapping.queryTypeMap(XmlJavaMapping.java:295)
        at 
soaprmi.mapping.XmlJavaMapping.queryTypeMap(XmlJavaMapping.java:266)
        at 
org.apache.wsif.providers.soap.soaprmi.WSIFOperation_SoapRMI.prepare(WSIFOperation_SoapRMI.java:217)


My service is very simple: the client sends to the server a float array 
and receives from the server another float number. With Axis Provider it 
works fine. Have I to set a different namespace encoding style instead of 
'http://schemas.xmlsoap.org/soap/encoding/' in my WSDL file?
Should I perharps to consider the use of WSIF with SoapRMI 
deprecated?
thanks in advance

R.

--- 
Roberto Podesta'  DIST, University of Genoa 
Via Opera Pia 13, 16145 Genoa (Italy)
Tel. +39 010 3532709
[EMAIL PROTECTED]

Reply via email to