[ http://jira.codehaus.org/browse/XFIRE-331?page=comments#action_64292 ] 

Stuart Barlow commented on XFIRE-331:
-------------------------------------

Hi Dan,
I have trimmed down my jar set too...

activation.jar
commons-codec-1.3.jar
commons-httpclient-3.0-rc2.jar
commons-logging.jar
jdom-1.0.jar
servlet.jar
stax-api-1.0.jar
wsdl4j-1.5.1.jar
wstx-asl-2.9.jar
xfire-all-1.1-SNAPSHOT.jar
XmlSchema-1.0.jar

This seems to be the minimum that I can get away with. Does it look about right.
I am in Java 1.4.2 if that is something of interest.

My request still looks like...

<soap:Body>
<logon xmlns="http://hemp.hummingbird.com/v1/hemp"; 
xsi:type="xsd:string">admin</logon>
</soap:Body>


Which is not right.
Test logon code is...

public void testLogon() throws Exception {
        URL url = new 
URL("http://localhost:8090/hc/webservices/LogonManager?wsdl";);
        Client client = new Client(url);

        Object[] response = client.invoke("logon", new Object[]{"admin", 
"Host", "admin", "xfire-unit-test", "edi-stuart"});
        String sessionId = (String) response[0];
        System.out.println("sessionId: " + sessionId);
    }

And the service WSDL is...

<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"; 
xmlns:soap11="http://schemas.xmlsoap.org/soap/envelope/"; 
xmlns:soap12="http://www.w3.org/2003/05/soap-envelope"; 
xmlns:soapenc11="http://schemas.xmlsoap.org/soap/encoding/"; 
xmlns:soapenc12="http://www.w3.org/2003/05/soap-encoding"; 
xmlns:tns="http://hemp.hummingbird.com/v1/hemp"; 
xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"; 
xmlns:xsd="http://www.w3.org/2001/XMLSchema"; 
targetNamespace="http://hemp.hummingbird.com/v1/hemp";>
  <wsdl:types>
    <xsd:schema targetNamespace="http://hemp.hummingbird.com/v1/hemp"; 
elementFormDefault="qualified" attributeFormDefault="qualified">
      <xsd:element name="logoff">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="in0" type="xsd:long" minOccurs="1" maxOccurs="1" 
/>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="logoffResponse">
        <xsd:complexType />
      </xsd:element>
      <xsd:element name="logonUsingCAP">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="in0" type="xsd:string" nillable="true" 
minOccurs="1" maxOccurs="1" />
            <xsd:element name="in1" type="xsd:string" nillable="true" 
minOccurs="1" maxOccurs="1" />
            <xsd:element name="in2" type="xsd:string" nillable="true" 
minOccurs="1" maxOccurs="1" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="logonUsingCAPResponse">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="out" type="xsd:long" minOccurs="1" maxOccurs="1" 
/>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="logon">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="in0" type="xsd:string" nillable="true" 
minOccurs="1" maxOccurs="1" />
            <xsd:element name="in1" type="xsd:string" nillable="true" 
minOccurs="1" maxOccurs="1" />
            <xsd:element name="in2" type="xsd:string" nillable="true" 
minOccurs="1" maxOccurs="1" />
            <xsd:element name="in3" type="xsd:string" nillable="true" 
minOccurs="1" maxOccurs="1" />
            <xsd:element name="in4" type="xsd:string" nillable="true" 
minOccurs="1" maxOccurs="1" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="logonResponse">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="out" type="xsd:long" minOccurs="1" maxOccurs="1" 
/>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="logon1">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="in0" type="xsd:string" nillable="true" 
minOccurs="1" maxOccurs="1" />
            <xsd:element name="in1" type="xsd:string" nillable="true" 
minOccurs="1" maxOccurs="1" />
            <xsd:element name="in2" type="xsd:string" nillable="true" 
minOccurs="1" maxOccurs="1" />
            <xsd:element name="in3" type="xsd:string" nillable="true" 
minOccurs="1" maxOccurs="1" />
            <xsd:element name="in4" type="xsd:string" nillable="true" 
minOccurs="1" maxOccurs="1" />
            <xsd:element name="in5" type="xsd:string" nillable="true" 
minOccurs="1" maxOccurs="1" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="logon1Response">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="out" type="xsd:long" minOccurs="1" maxOccurs="1" 
/>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
    </xsd:schema>
  </wsdl:types>
  <wsdl:message name="logonResponse">
    <wsdl:part element="tns:logonResponse" name="parameters" />
  </wsdl:message>
  <wsdl:message name="logon1Request">
    <wsdl:part element="tns:logon1" name="parameters" />
  </wsdl:message>
  <wsdl:message name="logonRequest">
    <wsdl:part element="tns:logon" name="parameters" />
  </wsdl:message>
  <wsdl:message name="logon1Response">
    <wsdl:part element="tns:logon1Response" name="parameters" />
  </wsdl:message>
  <wsdl:message name="logoffRequest">
    <wsdl:part element="tns:logoff" name="parameters" />
  </wsdl:message>
  <wsdl:message name="logonUsingCAPRequest">
    <wsdl:part element="tns:logonUsingCAP" name="parameters" />
  </wsdl:message>
  <wsdl:message name="logonUsingCAPResponse">
    <wsdl:part element="tns:logonUsingCAPResponse" name="parameters" />
  </wsdl:message>
  <wsdl:message name="logoffResponse">
    <wsdl:part element="tns:logoffResponse" name="parameters" />
  </wsdl:message>
  <wsdl:portType name="LogonManagerPortType">
    <wsdl:operation name="logoff">
      <wsdl:input message="tns:logoffRequest" name="logoffRequest" />
      <wsdl:output message="tns:logoffResponse" name="logoffResponse" />
    </wsdl:operation>
    <wsdl:operation name="logonUsingCAP">
      <wsdl:input message="tns:logonUsingCAPRequest" 
name="logonUsingCAPRequest" />
      <wsdl:output message="tns:logonUsingCAPResponse" 
name="logonUsingCAPResponse" />
    </wsdl:operation>
    <wsdl:operation name="logon">
      <wsdl:input message="tns:logonRequest" name="logonRequest" />
      <wsdl:output message="tns:logonResponse" name="logonResponse" />
    </wsdl:operation>
    <wsdl:operation name="logon1">
      <wsdl:input message="tns:logon1Request" name="logon1Request" />
      <wsdl:output message="tns:logon1Response" name="logon1Response" />
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:binding name="LogonManagerHttpBinding" type="tns:LogonManagerPortType">
    <wsdlsoap:binding style="document" 
transport="http://schemas.xmlsoap.org/soap/http"; />
    <wsdl:operation name="logoff">
      <wsdlsoap:operation soapAction="" />
      <wsdl:input name="logoffRequest">
        <wsdlsoap:body use="literal" />
      </wsdl:input>
      <wsdl:output name="logoffResponse">
        <wsdlsoap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="logonUsingCAP">
      <wsdlsoap:operation soapAction="" />
      <wsdl:input name="logonUsingCAPRequest">
        <wsdlsoap:body use="literal" />
      </wsdl:input>
      <wsdl:output name="logonUsingCAPResponse">
        <wsdlsoap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="logon">
      <wsdlsoap:operation soapAction="" />
      <wsdl:input name="logonRequest">
        <wsdlsoap:body use="literal" />
      </wsdl:input>
      <wsdl:output name="logonResponse">
        <wsdlsoap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="logon1">
      <wsdlsoap:operation soapAction="" />
      <wsdl:input name="logon1Request">
        <wsdlsoap:body use="literal" />
      </wsdl:input>
      <wsdl:output name="logon1Response">
        <wsdlsoap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:service name="LogonManager">
    <wsdl:port binding="tns:LogonManagerHttpBinding" 
name="LogonManagerHttpPort">
      <wsdlsoap:address 
location="http://localhost:8090/hc/webservices/LogonManager"; />
    </wsdl:port>
  </wsdl:service>
</wsdl:definitions>


Thanks for any help.
Stuart.


> Multiple parameters are not recognized with dynamic client
> ----------------------------------------------------------
>
>          Key: XFIRE-331
>          URL: http://jira.codehaus.org/browse/XFIRE-331
>      Project: XFire
>         Type: Bug

>     Versions: 1.0, 1.1-beta-1
>     Reporter: Stefan Becker
>     Assignee: Dan Diephouse
>      Fix For: 1.1

>
>
> I created a simple POJO as my service
> {{monspaced}}
> public class TestService {
>    public String concat(String string1, String string2) {
>       return string1 + string2;
>    }
> }
> {{monspaced}}
> and a corresponding services.xml
> {{monspaced}}
> <?xml version="1.0" encoding="ISO-8859-1"?>
> <beans xmlns="http://xfire.codehaus.org/config/1.0";>
>    <service>
>       <name>TestService</name>
>       <namespace>http://xfire.codehaus.org/TestService</namespace>
>       <serviceClass>TestService</serviceClass>
>    </service>
> </beans>
> {{monspaced}}
> http://localhost:81/xfire/services/TestService?wsdl generates a valid wsdl
> Then I tried to test my service with a dynamic client
> {{monspaced}}
> import java.net.MalformedURLException;
> import java.net.URL;
> import org.codehaus.xfire.client.Client;
> public class TestServiceClient {
>    public static void main(String[] args) throws MalformedURLException, 
> Exception {
>       Client client = new Client(new 
> URL("http://localhost:81/xfire/services/TestService?wsdl";));
>       Object[] results = client.invoke("concat", new Object[] { "ABC", "123" 
> });
>       System.out.println((String) results[0]);
>    }
> }
> {{monspaced}}
> The response is 'ABCABC' not as I expected 'ABC123'

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

Reply via email to