Are u using latest SVN? Please get latest SVN and try it.

-- dims

On 9/20/05, Filipp Akinfiev <[EMAIL PROTECTED]> wrote:
>  
>  
> 
> Hi All, 
> 
> i have next problem, i trying to play with service, that give some MIME
> binary data back. i have make client with folowing code, and it's not
> work…..i got following exception 
> inside invokeBlocking() method. i could monitor both request and response
> soap 
> envelopes properly via the tcp monitor.
>  
>  
> 
> what made i wrong? 
> 
>   
> 
> king reguards, 
> 
> filipp 
> 
>   
> 
>     public static TFaxReceiveResponse getFaxReceive() throws AxisFault { 
> 
>             TFaxReceiveResponse response = null; 
> 
>             try { 
> 
>                                    Call call = new Call(); 
> 
>                                    call.setTo(targetEPR); 
> 
> //                                 enabling MTOM 
> 
>                    
> call.set(Constants.Configuration.ENABLE_MTOM,
> Constants.VALUE_TRUE); 
> 
>                                   
> call.setTransportInfo(Constants.TRANSPORT_HTTP, Constants.TRANSPORT_HTTP,
> false); 
> 
>                                    try { 
> 
>                                               
> MessageContext requestContext = FaxReceive.request(new TFaxReceive(account,
> password)); 
> 
>                                                QName opName
> = new QName("urn:XMLWSIntf-IXMLWS", "FaxReceive"); 
> 
>                         OperationDescription opdesc = new
> OperationDescription(opName); 
> 
>                                                //Blocking
> invocation 
> 
>                         MessageContext result = (MessageContext)
> call.invokeBlocking(opdesc ,requestContext); 
> 
>                         response = FaxReceive.response(result); 
> 
>                                    } catch (Exception e) { 
> 
>                                               
> if(debug)e.printStackTrace(); 
> 
>                                    } 
> 
>                         } catch (AxisFault axisFault) { 
> 
>                                   
> if(debug)axisFault.printStackTrace(); 
> 
>                         } 
> 
>                         return response; 
>  
> 
>     } 
> 
> Exception: 
> 
> org.apache.axis2.AxisFault: null; nested exception is: 
> 
>             java.lang.NullPointerException 
> 
>             at
> org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:96)
> 
>             at
> org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:46)
> 
>             at
> org.apache.axis2.clientapi.TwoWayTransportBasedSender.send(TwoWayTransportBasedSender.java:54)
> 
>             at
> org.apache.axis2.clientapi.InOutMEPClient.invokeBlocking(InOutMEPClient.java:174)
> 
>             at
> de.fax.soap.axis2.client.FaxDeClient.getFaxReceive(FaxDeClient.java:344)
> 
>             at
> de.fax.soap.axis2.client.FaxDeClient.main(FaxDeClient.java:164)
> 
> Caused by: java.lang.NullPointerException 
> 
>             at
> org.apache.axis2.attachments.MIMEHelper.getAttachmentSpecType(MIMEHelper.java:165)
> 
>             at
> org.apache.axis2.transport.http.HTTPTransportUtils.selectBuilderForMIME(HTTPTransportUtils.java:345)
> 
>             at
> org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:73)
>  
> 
>             ... 5 more 
> 
> public class FaxReceive extends RequestResponse{ 
> 
>   
> 
>             public static MessageContext request(TFaxReceive faxReceive)
> throws AxisFault{ 
> 
>                         OMElement operation; 
> 
>                         MessageContext msgContext = null; 
> 
>                         
> 
>                         SOAPFactory factory =
> OMAbstractFactory.getSOAP11Factory(); 
> 
>                         SOAPEnvelope envelope =
> factory.getDefaultEnvelope(); 
> 
>        
> envelope.declareNamespace("http://schemas.xmlsoap.org/soap/envelope/";,
> "soapenv"); 
> 
>        
> envelope.declareNamespace("http://schemas.xmlsoap.org/soap/encoding/";,
> "SOAP-ENC"); 
> 
>        
> envelope.declareNamespace("http://www.w3.org/2001/XMLSchema-instance";,
> "xsi"); 
> 
>         
> 
>         
> 
>                         OMNamespace ns1 =
> factory.createOMNamespace("urn:XMLWSIntf-IXMLWS","NS1"); 
> 
>                         operation = factory.createOMElement("Status",ns1); 
> 
>                         
> 
>                         envelope.getBody().addChild(operation); 
> 
>                         
> 
>                         OMNamespace ns2 =
> operation.declareNamespace("http://www.w3.org/2001/XMLSchema","";);
> 
>                         operation.addChild(getOMElement(factory, ns2,
> "Account", "xsd:string", faxReceive.getAccount())); 
> 
>                         operation.addChild(getOMElement(factory, ns2,
> "Password", "xsd:string", faxReceive.getPassword())); 
> 
>                                                
> 
>                         ConfigurationContextFactory fac = new
> ConfigurationContextFactory(); 
> 
>         ConfigurationContext configContext =
> fac.buildClientConfigurationContext("Status"); 
> 
>         try { 
> 
>             msgContext = new MessageContext(configContext); 
> 
>         } catch (AxisFault axisFault) { 
> 
>             axisFault.printStackTrace(); 
> 
>         } 
> 
>         msgContext.setEnvelope(envelope); 
> 
>         if(debug)debugMessageContext(msgContext); 
> 
>         return msgContext; 
> 
>     } 
> 
>             
> 
>     public static TFaxReceiveResponse response(MessageContext result) { 
> 
> //          if(debug)debugMessageContext(result); 
> 
>             int ret = -1; 
> 
>         Iterator iterator; 
> 
>         OMNode node; 
> 
>         SOAPBody body; 
> 
>         OMElement operation, elem; 
> 
>         SOAPEnvelope resEnvelope; 
> 
>         resEnvelope = result.getEnvelope(); 
> 
>         body = resEnvelope.getBody(); 
> 
>         operation = resEnvelope.getBody(); 
> 
> //        operation = body.getFirstElement(); 
> 
>         if (body.hasFault()) { 
> 
>             if(debug)System.out.println("Error"); 
> 
>         } else { 
> 
>             OMElement part = operation.getFirstElement(); 
> 
>             iterator = part.getChildren(); 
> 
>             while (iterator.hasNext()) { 
> 
>                 node = (OMNode) iterator.next(); 
> 
>                 if (node.getType() == OMNode.ELEMENT_NODE) { 
> 
>                     elem = (OMElement) node; 
> 
>                     String str = elem.getLocalName(); 
> 
>                     System.out.println("elem Name:" + str); 
> 
>                     if (str.equals("return")) { 
> 
>                         ret = new Integer(elem.getText()).intValue(); 
> 
>                        
> if(debug)System.out.println("return:" + elem.getText()); 
> 
>                     }else if(str.equals("Protokoll")) { 
> 
> //                      OMElement child  =
> (OMElement)elem.getFirstChild(); 
> 
>                         //retreiving the Href attribute which contains the
> Content Id 
> 
>                         OMAttribute attr =
> (OMAttribute)elem.getFirstAttribute(new QName("href")); 
> 
>                         String contentID = attr.getValue(); 
> 
>                         //content-id processing to remove the "cid" prefix 
> 
>                         contentID = contentID.trim(); 
> 
>                         if (contentID.substring(0,
> 3).equalsIgnoreCase("cid")) { 
> 
>                             contentID = contentID.substring(4); 
> 
>                         } 
> 
>                                    
> 
>                         // Retrieving the MIMEHelper instance (which
> contains reference to attachments) 
> 
>                         // from the Message Context 
> 
> //                        MIMEHelper attachments =
> (MIMEHelper)result.getProperty(MIMEHelper.ATTACHMENTS); 
> 
> ///^^^^^^^^^^^^ MIMEHelper.ATTACHMENTS -> CANNOT BE RESOLVED
> !!!!!!!!!!!!!!!!!!!!!!!  ?!?!?!? 
> 
>                         // Retrieving the respective DataHandler referenced
> by the content-id 
> 
> //                        DataHandler dataHandler =
> attachments.getDataHandler(contentID); 
> 
> //                      OMText binaryNode = (OMText) elem.getFirstChild(); 
> 
>                         } 
> 
>                 } 
> 
>             } 
> 
>         } 
> 
>         return new TFaxReceiveResponse(ret); 
> 
>     } 
>  
> 
>   
> 
> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
> 
> POST /xmlws.exe/soap/IXMLWS HTTP/1.1 
> 
> User-Agent: Axis/2.0 
> 
> SOAPAction: 
> 
> Connection: Keep-Alive 
> 
> Host: ccs.fax.de:80 
> 
> Content-Length: 507 
> 
> Content-Type: text/xml; charset=utf-8 
> 
>   
> 
> <?xml version='1.0' encoding='utf-8'?> 
> 
>    <soapenv:Envelope
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";
> xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/";
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";> 
> 
>       <soapenv:Header></soapenv:Header> 
> 
>       <soapenv:Body> 
> 
>          <NS1:Status xmlns:NS1="urn:XMLWSIntf-IXMLWS"
> xmlns="http://www.w3.org/2001/XMLSchema";> 
> 
>             <Account
> xsi:type="xsd:string">1234567890</Account> 
> 
>             <Password
> xsi:type="xsd:string">ABCDEF</Password> 
> 
>          </NS1:Status> 
> 
>       </soapenv:Body> 
> 
>    </soapenv:Envelope> 
> 
> <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
> 
> HTTP/1.1 100 Continue 
> 
> Server: Microsoft-IIS/5.0 
> 
> Date: Tue, 20 Sep 2005 22:14:30 GMT 
> 
> X-Powered-By:: ASP.NET 
> 
>   
> 
> HTTP/1.1 200 OK 
> 
> Server: Microsoft-IIS/5.0 
> 
> Date: Tue, 20 Sep 2005 22:14:30 GMT 
> 
> X-Powered-By:: ASP.NET 
> 
> Connection: close 
> 
> Content-Version: MIME-Version: 1.0 
> 
> Content-Type: multipart/related;
> boundary=MIME_boundaryB0R9532143182121;
> start="<http://www.borland.com/rootpart.xml>"Content-Length:
> 759Content:--MIME_boundaryB0R9532143182121Content-Type:
> text/xml; charset="utf-8"Content-ID: 
> 
>    <http://www.borland.com/rootpart.xml>Content-Location:
> http://www.borland.com/rootpart.xmlContent-Length: 517 
> 
>       <?xml version="1.0"?> 
> 
>          <SOAP-ENV:Envelope
> xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/";
> xmlns:xsd="http://www.w3.org/2001/XMLSchema";
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
> xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/";>
> 
>             <SOAP-ENV:Body
> SOAP-ENC:encodingStyle="http://schemas.xmlsoap.org/soap/envelope/";>
> 
>                <NS1:StatusResponse
> xmlns:NS1="urn:XMLWSIntf-IXMLWS"> 
> 
>                   <return xsi:type="xsd:int">5</return> 
> 
>                   <Protokoll xsi:nil="true"/> 
> 
>                </NS1:StatusResponse> 
> 
>             </SOAP-ENV:Body> 
> 
>         
> </SOAP-ENV:Envelope>--MIME_boundaryB0R9532143182121— 
> 
> =============================================================================================================
>  
>  


-- 
Davanum Srinivas : http://wso2.com/ - Oxygenating The Web Service Platform

Reply via email to