[ https://issues.apache.org/jira/browse/AXIS2-2279?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Deepal Jayasinghe reassigned AXIS2-2279: ---------------------------------------- Assignee: Deepal Jayasinghe > java.lang.NullPointerException at > org.apache.axis2.description.ClientUtils.inferInTransport > (ClientUtils.java:85) > ---------------------------------------------------------------------------------------------------------------------- > > Key: AXIS2-2279 > URL: https://issues.apache.org/jira/browse/AXIS2-2279 > Project: Axis 2.0 (Axis2) > Issue Type: Bug > Affects Versions: 1.1.1 > Environment: Windows XP, Eclipse 3.2 , jre 1.5.0_06, Axis2 1.1.1 > Reporter: oliv g > Assigned To: Deepal Jayasinghe > > java.lang.NullPointerException > at > org.apache.axis2.description.ClientUtils.inferInTransport(ClientUtils.java:85) > at > org.apache.axis2.description.OutInAxisOperationClient.execute(OutInAxisOperation.java:163) > at > fr.acme.www.myapp_v1.AskForPricingStub.AskForPricingOperation(AskForPricingStub.java:150) > at fr.acme.www.myapp_v1.Client.go(Client.java:51) > which is not a clear error message. > Server and client are generated automaticly from the wsdl with Axis2 code > generator and xmlbeans databinding within Eclipse > (same result using wsdl2java.bat) > Here is the null pointer exception (transportOut is null) at > org.apache.axis2.description.ClientUtils.inferInTransport > (ClientUtils.java:85) received when launching my client code trying to > invoque the available service. > > } else { > //assume listener transport as sender transport > --> listenerTransportProtocol = > msgCtxt.getTransportOut().getName().getLocalPart(); > } > } > Here is the wsdl : > <?xml version="1.0" encoding="UTF-8"?> > <wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" > xmlns:val="http://www.acme.fr/myapp_V1" > xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" > xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="AskForPricing" > targetNamespace="http://www.acme.fr/myapp_V1"> > <wsdl:types> > <xsd:schema elementFormDefault="qualified" > targetNamespace="http://www.acme.fr/myapp_V1"> > <xsd:include schemaLocation="myappCommonTypes.xsd" /> > <xsd:element name="Instruments"> > <xsd:complexType> > <xsd:sequence> > <xsd:element > maxOccurs="unbounded" minOccurs="0" > name="Instrument" > type="val:InstrumentType" /> > </xsd:sequence> > </xsd:complexType> > </xsd:element> > <xsd:element name="AskForPricingOperationResponse"> > <xsd:complexType> > <xsd:sequence> > <xsd:element name="result" > type="xsd:string" /> > </xsd:sequence> > </xsd:complexType> > </xsd:element> > <xsd:element name="HeaderNCB" > type="val:HeaderNCBToFRType" /> > <xsd:element name="AskForPricingOperation_fault"> > <xsd:complexType> > <xsd:sequence> > <xsd:element > name="AskForPricingOperation_fault" > type="xsd:string"> > </xsd:element> > </xsd:sequence> > </xsd:complexType> > </xsd:element> > </xsd:schema> > </wsdl:types> > <wsdl:message name="AskForPricingOperationRequest"> > <wsdl:part element="val:Instruments" name="ListOfInstruments" /> > </wsdl:message> > <wsdl:message name="AskForPricingOperationRequestHeader"> > <wsdl:part element="val:HeaderNCB" name="RequestHeader" /> > </wsdl:message> > <wsdl:message name="AskForPricingOperationResponse"> > <wsdl:part element="val:AskForPricingOperationResponse" > name="Response" /> > </wsdl:message> > <wsdl:message name="AskForPricingOperation_faultMsg"> > <wsdl:part element="val:AskForPricingOperation_fault" > name="parameters" /> > </wsdl:message> > <wsdl:portType name="AskForPricing"> > <wsdl:operation name="AskForPricingOperation"> > <wsdl:input message="val:AskForPricingOperationRequest" > /> > <wsdl:output > message="val:AskForPricingOperationResponse" /> > <!-- <wsdl:fault > message="val:AskForPricingOperation_faultMsg" name="fault"/> --> > </wsdl:operation> > </wsdl:portType> > <wsdl:binding name="AskForPricingSOAP" type="val:AskForPricing"> > <soap:binding style="document" > transport="http://schemas.xmlsoap.org/soap/http" /> > <wsdl:operation name="AskForPricingOperation"> > <soap:operation > > soapAction="http://www.acme.fr/myapp_V1/NewOperation" /> > <wsdl:input> > <soap:header > > message="val:AskForPricingOperationRequestHeader" > part="RequestHeader" use="literal" /> > <soap:body parts="ListOfInstruments" > use="literal" /> > </wsdl:input> > <wsdl:output> > <soap:body use="literal" /> > </wsdl:output> > </wsdl:operation> > </wsdl:binding> > <wsdl:service name="AskForPricing"> > <wsdl:port binding="val:AskForPricingSOAP" > name="AskForPricingSOAP"> > <soap:address > > location="http://localhost:8080/myappWEB/services/AskForPricingSOAP" /> > </wsdl:port> > </wsdl:service> > </wsdl:definitions> > and the referenced xsd : > <?xml version="1.0" encoding="UTF-8"?> > <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" > xmlns="http://www.acme.fr/myapp_V1" > attributeFormDefault="unqualified" elementFormDefault="qualified" > targetNamespace="http://www.acme.fr/myapp_V1" version="1.0"> > <xs:simpleType name="NCBCountryCode"> > <xs:restriction base="xs:string"> > <xs:enumeration value="AT" /> > <xs:enumeration value="BE" /> > <xs:enumeration value="DE" /> > <xs:enumeration value="ES" /> > <xs:enumeration value="FI" /> > <xs:enumeration value="FR" /> > <xs:enumeration value="GR" /> > <xs:enumeration value="IE" /> > <xs:enumeration value="IT" /> > <xs:enumeration value="LU" /> > <xs:enumeration value="NL" /> > <xs:enumeration value="PT" /> > <xs:enumeration value="DK" /> > <xs:enumeration value="GB" /> > <xs:enumeration value="LI" /> > <xs:enumeration value="NO" /> > <xs:enumeration value="IS" /> > <xs:enumeration value="SE" /> > </xs:restriction> > </xs:simpleType> > <xs:complexType name="HeaderNCBType"> > <xs:sequence> > <xs:element name="senderNCB" type="NCBCountryCode" /> > <xs:element name="receiverNCB" type="NCBCountryCode" /> > <xs:element name="SubmissionDate" type="xs:dateTime" /> > </xs:sequence> > </xs:complexType> > <xs:complexType name="HeaderNCBFromFRType"> > <xs:complexContent> > <xs:restriction base="HeaderNCBType"> > <xs:sequence> > <xs:element name="senderNCB" > type="NCBCountryCode" > fixed="FR" /> > <xs:element name="receiverNCB" > type="NCBCountryCode" /> > <xs:element name="SubmissionDate" > type="xs:dateTime" /> > </xs:sequence> > </xs:restriction> > </xs:complexContent> > </xs:complexType> > <xs:complexType name="HeaderNCBToFRType"> > <xs:complexContent> > <xs:restriction base="HeaderNCBType"> > <xs:sequence> > <xs:element name="senderNCB" > type="NCBCountryCode" /> > <xs:element name="receiverNCB" > type="NCBCountryCode" > fixed="FR" /> > <xs:element name="SubmissionDate" > type="xs:dateTime" /> > </xs:sequence> > </xs:restriction> > </xs:complexContent> > </xs:complexType> > <xs:simpleType name="InstrumentTypeType"> > <xs:restriction base="xs:string"> > <xs:enumeration value="ABS" /> > </xs:restriction> > </xs:simpleType> > <xs:simpleType name="ISINType"> > <xs:restriction base="xs:string"> > <xs:minLength value="12"></xs:minLength> > <xs:maxLength value="12"></xs:maxLength> > <xs:pattern value="[A-Z]{2}[0-9A-Z]{9}\d{1}" /> > </xs:restriction> > </xs:simpleType> > <xs:simpleType name="PricingErrorCodeType"> > <xs:restriction base="xs:string"> > <xs:enumeration value="PriceAvailable" /> > <xs:enumeration value="PricingImpossible" /> > <xs:enumeration value="SeekingForAPricingMethod" /> > <xs:enumeration value="EquityNotEligible" /> > <xs:enumeration value="ExpiredEquity" /> > <xs:enumeration value="EquityNotPriceable" /> > </xs:restriction> > </xs:simpleType> > <xs:complexType name="InstrumentType"> > <xs:sequence> > <xs:element name="ISIN" type="ISINType" /> > </xs:sequence> > <xs:attribute name="type" type="InstrumentTypeType" /> > </xs:complexType> > <xs:complexType name="PricedInstrumentType"> > <xs:complexContent> > <xs:extension base="InstrumentType"> > <xs:sequence> > <xs:element name="ErrorCode" > type="PricingErrorCodeType" /> > <xs:element minOccurs="0" > name="CleanPrice" > type="xs:integer" /> > <xs:element minOccurs="0" > name="PricingDate" > type="xs:dateTime" /> > <xs:element minOccurs="0" > name="AccruedInterest" > type="xs:float" /> > <xs:element minOccurs="0" > name="PoolFactor" > type="xs:float" /> > </xs:sequence> > </xs:extension> > </xs:complexContent> > </xs:complexType> > </xs:schema> > Here is the full client code : > AskForPricingStub stub=new AskForPricingStub(); > > InstrumentsDocument > doc=InstrumentsDocument.Factory.newInstance(); > > fr.acme.www.myapp_v1.InstrumentsDocument.Instruments > > instruments=InstrumentsDocument.Instruments.Factory.newInstance(); > > InstrumentType instru1=InstrumentType.Factory.newInstance(); > instru1.setISIN("FR0123456789"); > > > instru1.setType(InstrumentTypeType.ABS); > > instruments.setInstrumentArray(new InstrumentType[] { instru1}); > doc.setInstruments(instruments); > > //HEADER > HeaderNCBDocument > header=HeaderNCBDocument.Factory.newInstance(); > HeaderNCBToFRType > headerNCBToFRType=HeaderNCBToFRType.Factory.newInstance(); > > Calendar submissionDate=Calendar.getInstance(); > headerNCBToFRType.setSubmissionDate(submissionDate); > > > fr.acme.www.myapp_v1.NCBCountryCode.Enum > sender=NCBCountryCode.AT; > fr.acme.www.myapp_v1.NCBCountryCode.Enum > receiver=NCBCountryCode.FR; > > > headerNCBToFRType.setSenderNCB( sender); > headerNCBToFRType.setReceiverNCB(receiver); > > header.setHeaderNCB(headerNCBToFRType ); > //here is fr.acme.www.myapp_v1.Client.go(Client.java:51) > stub.AskForPricingOperation(doc,header ); -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]