Re: Axis 1.4 server - .NET 2.0 client - Doc/Literal namespace? trouble
Thanks for reply once again! Is this something i can do about (beyond going for the wsdl first approach)? Or worth a jira report? Phil On 10/17/06, Anne Thomas Manes [EMAIL PROTECTED] wrote: There's a namespace error in the response message. According to the WSDL, the response message should look like this (or the semantic equivalent): ?xml version=1.0 encoding=UTF-8? soapenv:Envelope xmlns:soapenv=http://schemas.xmlsoap.org/soap/envelope/; xmlns:xsd=http://www.w3.org/2001/XMLSchema; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; soapenv:Body getBookByISBNResponse xmlns=http://webservice.psr.datamigration.ch; getBookByISBNReturn xmlns:ns1=http://www.data-migration.ch/; ns1:authorDan Diephouse/ns1:author ns1:isbn0123456789/ns1:isbn ns1:publicationDate2006-10-16T14:10:39.796Z/ns1:publicationDate ns1:publicationDateStringMon Oct 16 16:10:39 CEST 2006/ns1:publicationDateString ns1:titleUsing XFire/ns1:title /getBookByISBNReturn /getBookByISBNResponse /soapenv:Body /soapenv:Envelope Anne On 10/16/06, Philipp Stader [EMAIL PROTECTED] wrote: Thank you very much for your reply! On 10/15/06, Anne Thomas Manes [EMAIL PROTECTED] wrote: How did you generate the WSDL? (The WSDL and the response message don't match.) For best result, generate a wrapped style service. I am using wrapped/literal now. The Wsdl is generated through Axis on-the-fly. Maybe i mixed something up compiling the mail. Here is what i am testing with right now. When calling getBookByISBN the Book Object gets instantiated by .NET but all properties are null. Same Java class files using XFire as Soap Stack work for me. I will try Axis 2 1.1 too but we have quite some installations using Axis 1.4 and would like to keep it for now. deploy.wsdd, wsdl generated by Axis and Soap Request / Response to follow. Axis 1.4 is deployed on a Tomcat 4.1.31 using Java SDK 1.4.2_12 deploy.wsdd for Axis deployment xmlns=http://xml.apache.org/axis/wsdd/; xmlns:java=http://xml.apache.org/axis/wsdd/providers/java; xmlns:dmns=http://www.data-migration.ch/; service name=AxisBookWrappedLiteral provider=java:RPC style=wrapped use=literal parameter name=className value=ch.datamigration.psr.webservice.BookController/ parameter name=allowedMethods value=getBookByISBN/ beanMapping qname=dmns:Book type=java:ch.datamigration.psr.webservice.Book/ requestFlow handler type=soapmonitor/ /requestFlow responseFlow handler type=soapmonitor/ /responseFlow /service /deployment The wsdl Axis generates looks like this: ?xml version=1.0 encoding=UTF-8? wsdl:definitions targetNamespace=http://localhost:8080/axis/services/AxisBookWrappedLiteral; xmlns:apachesoap=http://xml.apache.org/xml-soap; xmlns:impl=http://localhost:8080/axis/services/AxisBookWrappedLiteral; xmlns:intf=http://localhost:8080/axis/services/AxisBookWrappedLiteral; xmlns:tns1=http://webservice.psr.datamigration.ch; xmlns:tns2=http://www.data-migration.ch/; xmlns:wsdl=http://schemas.xmlsoap.org/wsdl/; xmlns:wsdlsoap=http://schemas.xmlsoap.org/wsdl/soap/; xmlns:xsd=http://www.w3.org/2001/XMLSchema; !--WSDL created by Apache Axis version: 1.4 Built on Apr 22, 2006 (06:55:48 PDT)-- wsdl:types schema elementFormDefault=qualified targetNamespace=http://webservice.psr.datamigration.ch; xmlns=http://www.w3.org/2001/XMLSchema; import namespace=http://www.data-migration.ch// element name=getBookByISBN complexType sequence element name=isbn type=xsd:string/ /sequence /complexType /element element name=getBookByISBNResponse complexType sequence element name=getBookByISBNReturn type=tns2:Book/ /sequence /complexType /element /schema schema elementFormDefault=qualified targetNamespace=http://www.data-migration.ch/; xmlns=http://www.w3.org/2001/XMLSchema; complexType name=Book sequence element name=author nillable=true type=xsd:string/ element name=isbn nillable=true type=xsd:string/ element name=publicationDate nillable=true type=xsd:dateTime/ element name=publicationDateString nillable=true type=xsd:string/ element name=title nillable=true type=xsd:string/ /sequence /complexType /schema /wsdl:types wsdl:message name=getBookByISBNRequest wsdl:part element=tns1:getBookByISBN name=parameters/ /wsdl:message wsdl:message name=getBookByISBNResponse wsdl:part element=tns1:getBookByISBNResponse name=parameters/ /wsdl:message wsdl:portType name=BookController wsdl:operation name=getBookByISBN wsdl:input message=impl:getBookByISBNRequest name=getBookByISBNRequest/ wsdl:output message=impl:getBookByISBNResponse
Re: Axis 1.4 server - .NET 2.0 client - Doc/Literal namespace? trouble
I'm thinking that there must be something wrong with the way you generated or deployed your service, because otherwise no one would be able to get Axis 1.4 to work using the code-first approach, and I know that people are doing so. WSDL-first will certainly solve your problem. You can also do the java2wsdl / wsdl2java approach. Anne On 10/18/06, Philipp Stader [EMAIL PROTECTED] wrote: Thanks for reply once again! Is this something i can do about (beyond going for the wsdl first approach)? Or worth a jira report? Phil On 10/17/06, Anne Thomas Manes [EMAIL PROTECTED] wrote: There's a namespace error in the response message. According to the WSDL, the response message should look like this (or the semantic equivalent): ?xml version=1.0 encoding=UTF-8? soapenv:Envelope xmlns:soapenv=http://schemas.xmlsoap.org/soap/envelope/; xmlns:xsd=http://www.w3.org/2001/XMLSchema; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; soapenv:Body getBookByISBNResponse xmlns=http://webservice.psr.datamigration.ch; getBookByISBNReturn xmlns:ns1=http://www.data-migration.ch/; ns1:authorDan Diephouse/ns1:author ns1:isbn0123456789/ns1:isbn ns1:publicationDate2006-10-16T14:10:39.796Z/ns1:publicationDate ns1:publicationDateStringMon Oct 16 16:10:39 CEST 2006/ns1:publicationDateString ns1:titleUsing XFire/ns1:title /getBookByISBNReturn /getBookByISBNResponse /soapenv:Body /soapenv:Envelope Anne On 10/16/06, Philipp Stader [EMAIL PROTECTED] wrote: Thank you very much for your reply! On 10/15/06, Anne Thomas Manes [EMAIL PROTECTED] wrote: How did you generate the WSDL? (The WSDL and the response message don't match.) For best result, generate a wrapped style service. I am using wrapped/literal now. The Wsdl is generated through Axis on-the-fly. Maybe i mixed something up compiling the mail. Here is what i am testing with right now. When calling getBookByISBN the Book Object gets instantiated by .NET but all properties are null. Same Java class files using XFire as Soap Stack work for me. I will try Axis 2 1.1 too but we have quite some installations using Axis 1.4 and would like to keep it for now. deploy.wsdd, wsdl generated by Axis and Soap Request / Response to follow. Axis 1.4 is deployed on a Tomcat 4.1.31 using Java SDK 1.4.2_12 deploy.wsdd for Axis deployment xmlns=http://xml.apache.org/axis/wsdd/; xmlns:java=http://xml.apache.org/axis/wsdd/providers/java; xmlns:dmns=http://www.data-migration.ch/; service name=AxisBookWrappedLiteral provider=java:RPC style=wrapped use=literal parameter name=className value=ch.datamigration.psr.webservice.BookController/ parameter name=allowedMethods value=getBookByISBN/ beanMapping qname=dmns:Book type=java:ch.datamigration.psr.webservice.Book/ requestFlow handler type=soapmonitor/ /requestFlow responseFlow handler type=soapmonitor/ /responseFlow /service /deployment The wsdl Axis generates looks like this: ?xml version=1.0 encoding=UTF-8? wsdl:definitions targetNamespace=http://localhost:8080/axis/services/AxisBookWrappedLiteral; xmlns:apachesoap=http://xml.apache.org/xml-soap; xmlns:impl=http://localhost:8080/axis/services/AxisBookWrappedLiteral; xmlns:intf=http://localhost:8080/axis/services/AxisBookWrappedLiteral; xmlns:tns1=http://webservice.psr.datamigration.ch; xmlns:tns2=http://www.data-migration.ch/; xmlns:wsdl=http://schemas.xmlsoap.org/wsdl/; xmlns:wsdlsoap=http://schemas.xmlsoap.org/wsdl/soap/; xmlns:xsd=http://www.w3.org/2001/XMLSchema; !--WSDL created by Apache Axis version: 1.4 Built on Apr 22, 2006 (06:55:48 PDT)-- wsdl:types schema elementFormDefault=qualified targetNamespace=http://webservice.psr.datamigration.ch; xmlns=http://www.w3.org/2001/XMLSchema; import namespace=http://www.data-migration.ch// element name=getBookByISBN complexType sequence element name=isbn type=xsd:string/ /sequence /complexType /element element name=getBookByISBNResponse complexType sequence element name=getBookByISBNReturn type=tns2:Book/ /sequence /complexType /element /schema schema elementFormDefault=qualified targetNamespace=http://www.data-migration.ch/; xmlns=http://www.w3.org/2001/XMLSchema; complexType name=Book sequence element name=author nillable=true type=xsd:string/ element name=isbn nillable=true type=xsd:string/ element name=publicationDate nillable=true type=xsd:dateTime/ element name=publicationDateString nillable=true type=xsd:string/ element name=title nillable=true type=xsd:string/ /sequence /complexType
Re: Axis 1.4 server - .NET 2.0 client - Doc/Literal namespace? trouble
On 10/18/06, Anne Thomas Manes [EMAIL PROTECTED] wrote: I'm thinking that there must be something wrong with the way you generated or deployed your service, because otherwise no one would be able to get Axis 1.4 to work using the code-first approach, and I know that people are doing so. WSDL-first will certainly solve your problem. You can also do the java2wsdl / wsdl2java approach. Oh. Wasn't aware of java2wsdl tooling. Will try that and investigate my deployment descriptors. Thanks for your help! Anne On 10/18/06, Philipp Stader [EMAIL PROTECTED] wrote: Thanks for reply once again! Is this something i can do about (beyond going for the wsdl first approach)? Or worth a jira report? Phil On 10/17/06, Anne Thomas Manes [EMAIL PROTECTED] wrote: There's a namespace error in the response message. According to the WSDL, the response message should look like this (or the semantic equivalent): ?xml version=1.0 encoding=UTF-8? soapenv:Envelope xmlns:soapenv=http://schemas.xmlsoap.org/soap/envelope/; xmlns:xsd=http://www.w3.org/2001/XMLSchema; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; soapenv:Body getBookByISBNResponse xmlns=http://webservice.psr.datamigration.ch; getBookByISBNReturn xmlns:ns1=http://www.data-migration.ch/; ns1:authorDan Diephouse/ns1:author ns1:isbn0123456789/ns1:isbn ns1:publicationDate2006-10-16T14:10:39.796Z/ns1:publicationDate ns1:publicationDateStringMon Oct 16 16:10:39 CEST 2006/ns1:publicationDateString ns1:titleUsing XFire/ns1:title /getBookByISBNReturn /getBookByISBNResponse /soapenv:Body /soapenv:Envelope Anne On 10/16/06, Philipp Stader [EMAIL PROTECTED] wrote: Thank you very much for your reply! On 10/15/06, Anne Thomas Manes [EMAIL PROTECTED] wrote: How did you generate the WSDL? (The WSDL and the response message don't match.) For best result, generate a wrapped style service. I am using wrapped/literal now. The Wsdl is generated through Axis on-the-fly. Maybe i mixed something up compiling the mail. Here is what i am testing with right now. When calling getBookByISBN the Book Object gets instantiated by .NET but all properties are null. Same Java class files using XFire as Soap Stack work for me. I will try Axis 2 1.1 too but we have quite some installations using Axis 1.4 and would like to keep it for now. deploy.wsdd, wsdl generated by Axis and Soap Request / Response to follow. Axis 1.4 is deployed on a Tomcat 4.1.31 using Java SDK 1.4.2_12 deploy.wsdd for Axis deployment xmlns=http://xml.apache.org/axis/wsdd/; xmlns:java=http://xml.apache.org/axis/wsdd/providers/java; xmlns:dmns=http://www.data-migration.ch/; service name=AxisBookWrappedLiteral provider=java:RPC style=wrapped use=literal parameter name=className value=ch.datamigration.psr.webservice.BookController/ parameter name=allowedMethods value=getBookByISBN/ beanMapping qname=dmns:Book type=java:ch.datamigration.psr.webservice.Book/ requestFlow handler type=soapmonitor/ /requestFlow responseFlow handler type=soapmonitor/ /responseFlow /service /deployment The wsdl Axis generates looks like this: ?xml version=1.0 encoding=UTF-8? wsdl:definitions targetNamespace=http://localhost:8080/axis/services/AxisBookWrappedLiteral; xmlns:apachesoap=http://xml.apache.org/xml-soap; xmlns:impl=http://localhost:8080/axis/services/AxisBookWrappedLiteral; xmlns:intf=http://localhost:8080/axis/services/AxisBookWrappedLiteral; xmlns:tns1=http://webservice.psr.datamigration.ch; xmlns:tns2=http://www.data-migration.ch/; xmlns:wsdl=http://schemas.xmlsoap.org/wsdl/; xmlns:wsdlsoap=http://schemas.xmlsoap.org/wsdl/soap/; xmlns:xsd=http://www.w3.org/2001/XMLSchema; !--WSDL created by Apache Axis version: 1.4 Built on Apr 22, 2006 (06:55:48 PDT)-- wsdl:types schema elementFormDefault=qualified targetNamespace=http://webservice.psr.datamigration.ch; xmlns=http://www.w3.org/2001/XMLSchema; import namespace=http://www.data-migration.ch// element name=getBookByISBN complexType sequence element name=isbn type=xsd:string/ /sequence /complexType /element element name=getBookByISBNResponse complexType sequence element name=getBookByISBNReturn type=tns2:Book/ /sequence /complexType /element /schema schema elementFormDefault=qualified targetNamespace=http://www.data-migration.ch/; xmlns=http://www.w3.org/2001/XMLSchema; complexType name=Book sequence element name=author nillable=true type=xsd:string/
Re: Axis 1.4 server - .NET 2.0 client - Doc/Literal namespace? trouble
There's a namespace error in the response message. According to the WSDL, the response message should look like this (or the semantic equivalent): ?xml version=1.0 encoding=UTF-8? soapenv:Envelope xmlns:soapenv=http://schemas.xmlsoap.org/soap/envelope/; xmlns:xsd=http://www.w3.org/2001/XMLSchema; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; soapenv:Body getBookByISBNResponse xmlns=http://webservice.psr.datamigration.ch; getBookByISBNReturn xmlns:ns1=http://www.data-migration.ch/; ns1:authorDan Diephouse/ns1:author ns1:isbn0123456789/ns1:isbn ns1:publicationDate2006-10-16T14:10:39.796Z/ns1:publicationDate ns1:publicationDateStringMon Oct 16 16:10:39 CEST 2006/ns1:publicationDateString ns1:titleUsing XFire/ns1:title /getBookByISBNReturn /getBookByISBNResponse /soapenv:Body /soapenv:Envelope Anne On 10/16/06, Philipp Stader [EMAIL PROTECTED] wrote: Thank you very much for your reply! On 10/15/06, Anne Thomas Manes [EMAIL PROTECTED] wrote: How did you generate the WSDL? (The WSDL and the response message don't match.) For best result, generate a wrapped style service. I am using wrapped/literal now. The Wsdl is generated through Axis on-the-fly. Maybe i mixed something up compiling the mail. Here is what i am testing with right now. When calling getBookByISBN the Book Object gets instantiated by .NET but all properties are null. Same Java class files using XFire as Soap Stack work for me. I will try Axis 2 1.1 too but we have quite some installations using Axis 1.4 and would like to keep it for now. deploy.wsdd, wsdl generated by Axis and Soap Request / Response to follow. Axis 1.4 is deployed on a Tomcat 4.1.31 using Java SDK 1.4.2_12 deploy.wsdd for Axis deployment xmlns=http://xml.apache.org/axis/wsdd/; xmlns:java=http://xml.apache.org/axis/wsdd/providers/java; xmlns:dmns=http://www.data-migration.ch/; service name=AxisBookWrappedLiteral provider=java:RPC style=wrapped use=literal parameter name=className value=ch.datamigration.psr.webservice.BookController/ parameter name=allowedMethods value=getBookByISBN/ beanMapping qname=dmns:Book type=java:ch.datamigration.psr.webservice.Book/ requestFlow handler type=soapmonitor/ /requestFlow responseFlow handler type=soapmonitor/ /responseFlow /service /deployment The wsdl Axis generates looks like this: ?xml version=1.0 encoding=UTF-8? wsdl:definitions targetNamespace=http://localhost:8080/axis/services/AxisBookWrappedLiteral; xmlns:apachesoap=http://xml.apache.org/xml-soap; xmlns:impl=http://localhost:8080/axis/services/AxisBookWrappedLiteral; xmlns:intf=http://localhost:8080/axis/services/AxisBookWrappedLiteral; xmlns:tns1=http://webservice.psr.datamigration.ch; xmlns:tns2=http://www.data-migration.ch/; xmlns:wsdl=http://schemas.xmlsoap.org/wsdl/; xmlns:wsdlsoap=http://schemas.xmlsoap.org/wsdl/soap/; xmlns:xsd=http://www.w3.org/2001/XMLSchema; !--WSDL created by Apache Axis version: 1.4 Built on Apr 22, 2006 (06:55:48 PDT)-- wsdl:types schema elementFormDefault=qualified targetNamespace=http://webservice.psr.datamigration.ch; xmlns=http://www.w3.org/2001/XMLSchema; import namespace=http://www.data-migration.ch// element name=getBookByISBN complexType sequence element name=isbn type=xsd:string/ /sequence /complexType /element element name=getBookByISBNResponse complexType sequence element name=getBookByISBNReturn type=tns2:Book/ /sequence /complexType /element /schema schema elementFormDefault=qualified targetNamespace=http://www.data-migration.ch/; xmlns=http://www.w3.org/2001/XMLSchema; complexType name=Book sequence element name=author nillable=true type=xsd:string/ element name=isbn nillable=true type=xsd:string/ element name=publicationDate nillable=true type=xsd:dateTime/ element name=publicationDateString nillable=true type=xsd:string/ element name=title nillable=true type=xsd:string/ /sequence /complexType /schema /wsdl:types wsdl:message name=getBookByISBNRequest wsdl:part element=tns1:getBookByISBN name=parameters/ /wsdl:message wsdl:message name=getBookByISBNResponse wsdl:part element=tns1:getBookByISBNResponse name=parameters/ /wsdl:message wsdl:portType name=BookController wsdl:operation name=getBookByISBN wsdl:input message=impl:getBookByISBNRequest name=getBookByISBNRequest/ wsdl:output message=impl:getBookByISBNResponse name=getBookByISBNResponse/ /wsdl:operation /wsdl:portType wsdl:binding name=AxisBookWrappedLiteralSoapBinding type=impl:BookController wsdlsoap:binding style=document transport=http://schemas.xmlsoap.org/soap/http/ wsdl:operation name=getBookByISBN wsdlsoap:operation
Re: Axis 1.4 server - .NET 2.0 client - Doc/Literal namespace? trouble
Thank you very much for your reply! On 10/15/06, Anne Thomas Manes [EMAIL PROTECTED] wrote: How did you generate the WSDL? (The WSDL and the response message don't match.) For best result, generate a wrapped style service. I am using wrapped/literal now. The Wsdl is generated through Axis on-the-fly. Maybe i mixed something up compiling the mail. Here is what i am testing with right now. When calling getBookByISBN the Book Object gets instantiated by .NET but all properties are null. Same Java class files using XFire as Soap Stack work for me. I will try Axis 2 1.1 too but we have quite some installations using Axis 1.4 and would like to keep it for now. deploy.wsdd, wsdl generated by Axis and Soap Request / Response to follow. Axis 1.4 is deployed on a Tomcat 4.1.31 using Java SDK 1.4.2_12 deploy.wsdd for Axis deployment xmlns=http://xml.apache.org/axis/wsdd/; xmlns:java=http://xml.apache.org/axis/wsdd/providers/java; xmlns:dmns=http://www.data-migration.ch/; service name=AxisBookWrappedLiteral provider=java:RPC style=wrapped use=literal parameter name=className value=ch.datamigration.psr.webservice.BookController/ parameter name=allowedMethods value=getBookByISBN/ beanMapping qname=dmns:Book type=java:ch.datamigration.psr.webservice.Book/ requestFlow handler type=soapmonitor/ /requestFlow responseFlow handler type=soapmonitor/ /responseFlow /service /deployment The wsdl Axis generates looks like this: ?xml version=1.0 encoding=UTF-8? wsdl:definitions targetNamespace=http://localhost:8080/axis/services/AxisBookWrappedLiteral; xmlns:apachesoap=http://xml.apache.org/xml-soap; xmlns:impl=http://localhost:8080/axis/services/AxisBookWrappedLiteral; xmlns:intf=http://localhost:8080/axis/services/AxisBookWrappedLiteral; xmlns:tns1=http://webservice.psr.datamigration.ch; xmlns:tns2=http://www.data-migration.ch/; xmlns:wsdl=http://schemas.xmlsoap.org/wsdl/; xmlns:wsdlsoap=http://schemas.xmlsoap.org/wsdl/soap/; xmlns:xsd=http://www.w3.org/2001/XMLSchema; !--WSDL created by Apache Axis version: 1.4 Built on Apr 22, 2006 (06:55:48 PDT)-- wsdl:types schema elementFormDefault=qualified targetNamespace=http://webservice.psr.datamigration.ch; xmlns=http://www.w3.org/2001/XMLSchema; import namespace=http://www.data-migration.ch// element name=getBookByISBN complexType sequence element name=isbn type=xsd:string/ /sequence /complexType /element element name=getBookByISBNResponse complexType sequence element name=getBookByISBNReturn type=tns2:Book/ /sequence /complexType /element /schema schema elementFormDefault=qualified targetNamespace=http://www.data-migration.ch/; xmlns=http://www.w3.org/2001/XMLSchema; complexType name=Book sequence element name=author nillable=true type=xsd:string/ element name=isbn nillable=true type=xsd:string/ element name=publicationDate nillable=true type=xsd:dateTime/ element name=publicationDateString nillable=true type=xsd:string/ element name=title nillable=true type=xsd:string/ /sequence /complexType /schema /wsdl:types wsdl:message name=getBookByISBNRequest wsdl:part element=tns1:getBookByISBN name=parameters/ /wsdl:message wsdl:message name=getBookByISBNResponse wsdl:part element=tns1:getBookByISBNResponse name=parameters/ /wsdl:message wsdl:portType name=BookController wsdl:operation name=getBookByISBN wsdl:input message=impl:getBookByISBNRequest name=getBookByISBNRequest/ wsdl:output message=impl:getBookByISBNResponse name=getBookByISBNResponse/ /wsdl:operation /wsdl:portType wsdl:binding name=AxisBookWrappedLiteralSoapBinding type=impl:BookController wsdlsoap:binding style=document transport=http://schemas.xmlsoap.org/soap/http/ wsdl:operation name=getBookByISBN wsdlsoap:operation soapAction=/ wsdl:input name=getBookByISBNRequest wsdlsoap:body use=literal/ /wsdl:input wsdl:output name=getBookByISBNResponse wsdlsoap:body use=literal/ /wsdl:output /wsdl:operation /wsdl:binding wsdl:service name=BookControllerService wsdl:port binding=impl:AxisBookWrappedLiteralSoapBinding name=AxisBookWrappedLiteral wsdlsoap:address location=http://192.168.155.254:8080/axis/services/AxisBookWrappedLiteral/ /wsdl:port /wsdl:service /wsdl:definitions The Soap Request: ?xml version=1.0 encoding=UTF-8? wsdl:definitions targetNamespace=http://localhost:8080/axis/services/AxisBookWrappedLiteral; xmlns:apachesoap=http://xml.apache.org/xml-soap; xmlns:impl=http://localhost:8080/axis/services/AxisBookWrappedLiteral; xmlns:intf=http://localhost:8080/axis/services/AxisBookWrappedLiteral; xmlns:tns1=http://webservice.psr.datamigration.ch; xmlns:tns2=http://www.data-migration.ch/;
Re: Axis 1.4 server - .NET 2.0 client - Doc/Literal namespace? trouble
How did you generate the WSDL? (The WSDL and the response message don't match.) For best result, generate a wrapped style service. Anne On 10/12/06, Philipp Stader [EMAIL PROTECTED] wrote: Hi there, lucky me has to write a .NET 2.0 client to consume Axis Web Services. Right now all Web Services are deployed using Rpc/Encoded. Doing some quick research it sounds like Document/Literal is the way to go. The rpc/enc services get consumed quite ok, unfortunately .NET has an issue talking to an Axis Document/Literal Service i created. Interestingly enough it is able to work with an XFire Document/Literal Web Service fine based on the very same (basic) Java classes. There is a difference in the response to the requests by the two and apparently the change is big enough to make .NET struggle. Response by Axis: ?xml version=1.0 encoding=UTF-8? soapenv:Envelope xmlns:soapenv=http://schemas.xmlsoap.org/soap/envelope/; xmlns:xsd=http://www.w3.org/2001/XMLSchema; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; soapenv:Body isbnReturn xmlns=http://webservice.psr.datamigration.ch; authorDan Diephouse/author isbn0123456789/isbn publicationDate2006-10-11T14:06:37.656Z/publicationDate publicationDateStringWed Oct 11 16:06:37 CEST 2006 /publicationDateString titleUsing XFire/title /isbnReturn /soapenv:Body /soapenv:Envelope Response by XFire: soap:Envelope xmlns:soap=http://schemas.xmlsoap.org/soap/envelope/; xmlns:xsd=http://www.w3.org/2001/XMLSchema; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; soap:Body getBookout xmlns=http://localhost:8080/xfire/services/BookController; author xmlns=http://webservice.psr.datamigration.ch; Dan Diephouse/author isbn xmlns=http://webservice.psr.datamigration.ch;0123456789/isbn publicationDate xmlns=http://webservice.psr.datamigration.ch; 2006-10-11T16:08:01.484+02:00/publicationDate publicationDateString xmlns=http://webservice.psr.datamigration.ch; Wed Oct 11 16:08:01 CEST 2006/publicationDateString title xmlns=http://webservice.psr.datamigration.ch;Using XFire/title /getBookout /soap:Body /soap:Envelope The XFire Response is happily accepted by the .NET 2.0 client using the proxy class generated by Add Web Reference. I have no clue how to bribe Axis to send a Doc/Literal answer that .NET is able to parse (and if i really would want to). Also don't know if XFire is doing something wrong just to please the .NET clients out there. Another thing i tried was to take the wsdl generated by XFire (since it works) to again generate wsdd (WSDL2Java) for Axis. Didn't make a difference for my tests. (i know i should do WSDL first but this isn't feasible for my current task). I also changed the parameter name=dotNetSoapEncFix value=true/ to false. Didn't change anything. I also tried with the wrapped style but no go also. All hints and pointers highly appreciated. I'll be more than happy to document what it takes to make Axis Doc/Lit work with .NET 2.0 on the wiki. Seems like all docs there target .NET 1.0/1.1 Phil WSDLs, Deployment Descriptors to follow: WSDL generated by Axis: ?xml version=1.0 encoding=UTF-8? wsdl:definitions targetNamespace=http://localhost:8080/axis/services/BookControllerDocLiteral; xmlns:apachesoap=http://xml.apache.org/xml-soap; xmlns:impl=http://localhost:8080/axis/services/BookControllerDocLiteral; xmlns:intf=http://localhost:8080/axis/services/BookControllerDocLiteral; xmlns:tns1=http://www.data-migration.ch/; xmlns:tns2=http://webservice.psr.datamigration.ch; xmlns:wsdl=http://schemas.xmlsoap.org/wsdl/; xmlns:wsdlsoap=http://schemas.xmlsoap.org/wsdl/soap/; xmlns:xsd=http://www.w3.org/2001/XMLSchema; !--WSDL created by Apache Axis version: 1.4 Built on Apr 22, 2006 (06:55:48 PDT)-- wsdl:types schema elementFormDefault=qualified targetNamespace=http://www.data-migration.ch/; xmlns=http://www.w3.org/2001/XMLSchema; complexType name=Book sequence element name=author nillable=true type=xsd:string/ element name=isbn nillable=true type=xsd:string/ element name=publicationDate nillable=true type=xsd:dateTime/ element name=publicationDateString nillable=true type=xsd:string/ element name=title nillable=true type=xsd:string/ /sequence /complexType /schema schema elementFormDefault=qualified targetNamespace=http://localhost:8080/axis/services/BookControllerDocLiteral; xmlns=http://www.w3.org/2001/XMLSchema; import namespace=http://www.data-migration.ch// element name=getBooksReturn complexType sequence element maxOccurs=unbounded minOccurs=0 name=item type=tns1:Book/ /sequence /complexType /element element