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) { > ArrayList<String> res = new ArrayList<String>(); > 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> > <item>1</item> > <item>10</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"> > <reportIDs>1</reportIDs> > <reportIDs>10</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. > >