Re: Geronimo, JAX WS, JAXB
Jarek; Thanks!! I downloaded and installed release 2.1.3. Now the Geronimo server returns the same SOAP message as the JBoss server. Solved my problem. Marty Jarek Gawor-2 wrote: What Geronimo version and assembly are you using? Can you try with the latest release 2.1.3? Thanks, Jarek On Thu, Sep 18, 2008 at 3:19 PM, fish4trout [EMAIL PROTECTED] wrote: I am new to JAX WS and Geronimo but am having a difficult time with the XML mapping for a simple POJO Web Service that returns String[]. Here is the code: -- package com.praxis.webservice.jaxws.reportmanager; import javax.jws.WebParam; import javax.jws.WebResult; import javax.jws.WebService; @WebService(name=ReportManagerPortType, targetNamespace = http://report.webservices.praxis.com;) public interface ReportManger { @WebResult(name=reportName) public String getReportName(@WebParam int id); @WebResult(name=reportIDs) public String[] searchByID(@WebParam String iD); @WebResult(name=report) public Report getReport(@WebParam int id); } -- package com.praxis.webservice.jaxws.reportmanager; import java.util.ArrayList; import javax.jws.WebService; @WebService(serviceName = ReportManger, portName = ReportMangerPort, endpointInterface = com.praxis.webservice.jaxws.reportmanager.ReportManger, targetNamespace = http://report.webservices.praxis.com;) public class ReportManagerService implements ReportManger { public String getReportName(int id) { return Got report; } public String[] searchByID(String id) { ArrayListString res = new ArrayListString(); res.add(new String(1)); res.add(new String(10)); return res.toArray(new String[0]); } public Report getReport(int id) { return new Report(1,Test Report); } } - The service deploys to Geronimo getReportName and getReport work as expected. The searchByID call always returns an array of size 1 with as the string. The snippet of the xsd from the Geronimo server descripes the return element as: xs:complexType name=searchByIDResponse xs:sequence xs:element maxOccurs=unbounded minOccurs=0 name=reportIDs type=xs:string/ /xs:sequence /xs:complexType -- However the soap message body returned from the call contains this: - soapenv:Body searchByIPResponse xmlns:dlwmin=http://report.webservices.praxis.com; reportIDs item1/item item10/item /reportIDs /searchByIPResponse /soapenv:Body --- I have used the identical code for the Java classes and deployed the service to a JBoss server. Although the xsd description is similar to the Geronimo xsd the JBoss server returns this: - soapenv:Body searchByIPResponse xmlns:dlwmin=http://report.webservices.praxis.com; reportIDs1/reportIDs reportIDs10/reportIDs /searchByIPResponse /soapenv:Body Does anyone have a suggestion as to what I may be doing wrong? -- View this message in context: http://www.nabble.com/Geronimo%2C-JAX-WS%2C-JAXB-tp19559399s134p19559399.html Sent from the Apache Geronimo - Users mailing list archive at Nabble.com. -- View this message in context: http://www.nabble.com/Geronimo%2C-JAX-WS%2C-JAXB-tp19559399s134p19608850.html Sent from the Apache Geronimo - Users mailing list archive at Nabble.com.
Geronimo, JAX WS, JAXB
I am new to JAX WS and Geronimo but am having a difficult time with the XML mapping for a simple POJO Web Service that returns String[]. Here is the code: -- package com.praxis.webservice.jaxws.reportmanager; import javax.jws.WebParam; import javax.jws.WebResult; import javax.jws.WebService; @WebService(name=ReportManagerPortType, targetNamespace = http://report.webservices.praxis.com;) public interface ReportManger { @WebResult(name=reportName) public String getReportName(@WebParam int id); @WebResult(name=reportIDs) public String[] searchByID(@WebParam String iD); @WebResult(name=report) public Report getReport(@WebParam int id); } -- package com.praxis.webservice.jaxws.reportmanager; import java.util.ArrayList; import javax.jws.WebService; @WebService(serviceName = ReportManger, portName = ReportMangerPort, endpointInterface = com.praxis.webservice.jaxws.reportmanager.ReportManger, targetNamespace = http://report.webservices.praxis.com;) public class ReportManagerService implements ReportManger { public String getReportName(int id) { return Got report; } public String[] searchByID(String id) { ArrayListString res = new ArrayListString(); res.add(new String(1)); res.add(new String(10)); return res.toArray(new String[0]); } public Report getReport(int id) { return new Report(1,Test Report); } } - The service deploys to Geronimo getReportName and getReport work as expected. The searchByID call always returns an array of size 1 with as the string. The snippet of the xsd from the Geronimo server descripes the return element as: xs:complexType name=searchByIDResponse xs:sequence xs:element maxOccurs=unbounded minOccurs=0 name=reportIDs type=xs:string/ /xs:sequence /xs:complexType -- However the soap message body returned from the call contains this: - soapenv:Body searchByIPResponse xmlns:dlwmin=http://report.webservices.praxis.com; reportIDs item1/item item10/item /reportIDs /searchByIPResponse /soapenv:Body --- I have used the identical code for the Java classes and deployed the service to a JBoss server. Although the xsd description is similar to the Geronimo xsd the JBoss server returns this: - soapenv:Body searchByIPResponse xmlns:dlwmin=http://report.webservices.praxis.com; reportIDs1/reportIDs reportIDs10/reportIDs /searchByIPResponse /soapenv:Body Does anyone have a suggestion as to what I may be doing wrong? -- View this message in context: http://www.nabble.com/Geronimo%2C-JAX-WS%2C-JAXB-tp19559399s134p19559399.html Sent from the Apache Geronimo - Users mailing list archive at Nabble.com.
Re: Geronimo, JAX WS, JAXB
What Geronimo version and assembly are you using? Can you try with the latest release 2.1.3? Thanks, Jarek On Thu, Sep 18, 2008 at 3:19 PM, fish4trout [EMAIL PROTECTED] wrote: I am new to JAX WS and Geronimo but am having a difficult time with the XML mapping for a simple POJO Web Service that returns String[]. Here is the code: -- package com.praxis.webservice.jaxws.reportmanager; import javax.jws.WebParam; import javax.jws.WebResult; import javax.jws.WebService; @WebService(name=ReportManagerPortType, targetNamespace = http://report.webservices.praxis.com;) public interface ReportManger { @WebResult(name=reportName) public String getReportName(@WebParam int id); @WebResult(name=reportIDs) public String[] searchByID(@WebParam String iD); @WebResult(name=report) public Report getReport(@WebParam int id); } -- package com.praxis.webservice.jaxws.reportmanager; import java.util.ArrayList; import javax.jws.WebService; @WebService(serviceName = ReportManger, portName = ReportMangerPort, endpointInterface = com.praxis.webservice.jaxws.reportmanager.ReportManger, targetNamespace = http://report.webservices.praxis.com;) public class ReportManagerService implements ReportManger { public String getReportName(int id) { return Got report; } public String[] searchByID(String id) { ArrayListString res = new ArrayListString(); res.add(new String(1)); res.add(new String(10)); return res.toArray(new String[0]); } public Report getReport(int id) { return new Report(1,Test Report); } } - The service deploys to Geronimo getReportName and getReport work as expected. The searchByID call always returns an array of size 1 with as the string. The snippet of the xsd from the Geronimo server descripes the return element as: xs:complexType name=searchByIDResponse xs:sequence xs:element maxOccurs=unbounded minOccurs=0 name=reportIDs type=xs:string/ /xs:sequence /xs:complexType -- However the soap message body returned from the call contains this: - soapenv:Body searchByIPResponse xmlns:dlwmin=http://report.webservices.praxis.com; reportIDs item1/item item10/item /reportIDs /searchByIPResponse /soapenv:Body --- I have used the identical code for the Java classes and deployed the service to a JBoss server. Although the xsd description is similar to the Geronimo xsd the JBoss server returns this: - soapenv:Body searchByIPResponse xmlns:dlwmin=http://report.webservices.praxis.com; reportIDs1/reportIDs reportIDs10/reportIDs /searchByIPResponse /soapenv:Body Does anyone have a suggestion as to what I may be doing wrong? -- View this message in context: http://www.nabble.com/Geronimo%2C-JAX-WS%2C-JAXB-tp19559399s134p19559399.html Sent from the Apache Geronimo - Users mailing list archive at Nabble.com.