Note that there are some explanatory texts on larger screens.

plurals
  1. POWhen calling a SOAP Service parameter is passed as null
    primarykey
    data
    text
    <p>I am a little bit newbie about those web, and SOAP service issues. My problem is as follows: I have a web service: </p> <pre><code>[WebService(Namespace = "http://localhost:30000/QlogisticIntegration.asmx")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] public class QlogisticIntegration : System.Web.Services.WebService { [WebMethod(Description = "Qlogistik.")] public QlogisticResultEntity DoAccountingForProducts(QlogisticInputEntity pMsg) { MessagingProcessor mProcessor = new MessagingProcessor(); ResponseMessage respMsg = null; QlogisticResultEntity resultMessage = new QlogisticResultEntity(); DateTime vToday = Global.GetChannel("QLOGISTIC").Today; Intertech.Core.Framework.Context.CurrentContext.Branch = Global.GetBranch(9019); Decimal exchangeRate = FxRatesQuery.GetRates(9019, "T", "D", "A", pMsg.CurrencyCode, vToday); CqlogMessage msg = new CqlogMessage(); msg.QlogInputEntity = pMsg; . . . . return resultMessage; } } </code></pre> <p>And here is how i call it via java: </p> <pre><code>public tr.com.intertech.core.QlogisticResultEntity DoAccountingForProducts(tr.com.intertech.core.QlogisticInputEntity pMsg) throws java.rmi.RemoteException { if (super.cachedEndpoint == null) { throw new org.apache.axis.NoEndPointException(); } org.apache.axis.client.Call _call = createCall(); _call.addParameter(new javax.xml.namespace.QName("http://localhost:30000/QlogisticIntegration.asmx/", "pMsg"), new javax.xml.namespace.QName("http://localhost:30000/QlogisticIntegration.asmx/", "QlogisticInputEntity"), tr.com.intertech.core.QlogisticInputEntity.class, javax.xml.rpc.ParameterMode.IN); _call.setUseSOAPAction(true); _call.setReturnType(new javax.xml.namespace.QName("http://localhost:30000/QlogisticIntegration.asmx/", "QlogisticResultEntity"), tr.com.intertech.core.QlogisticResultEntity.class); _call.setSOAPActionURI("http://localhost:30000/QlogisticIntegration.asmx/DoAccountingForProducts"); _call.setEncodingStyle(null); _call.setScopedProperty(org.apache.axis.client.Call.SEND_TYPE_ATTR, Boolean.FALSE); _call.setScopedProperty(org.apache.axis.AxisEngine.PROP_DOMULTIREFS, Boolean.FALSE); _call.setOperationStyle("wrapped"); _call.setOperationName(new javax.xml.namespace.QName("http://localhost:30000/QlogisticIntegration.asmx/", "DoAccountingForProducts")); _call.setReturnQName(new javax.xml.namespace.QName("http://localhost:30000/QlogisticIntegration.asmx/", "DoAccountingForProductsResult")); java.lang.Object _resp = _call.invoke(new java.lang.Object[] {pMsg}); if (_resp instanceof java.rmi.RemoteException) { throw (java.rmi.RemoteException)_resp; } else { try { return (tr.com.intertech.core.QlogisticResultEntity) _resp; } catch (java.lang.Exception _exception) { return (tr.com.intertech.core.QlogisticResultEntity) org.apache.axis.utils.JavaUtils.convert(_resp, tr.com.intertech.core.QlogisticResultEntity.class); } } } </code></pre> <p>I debug both webservice and the java application(actually a web site), and when I make the request to the web service, it hits the breakpoint in debug mode of the web service. However the parameter pMsg is passed as null althoguh I can see its content and it is not null during debugging in eclipse, before calling the web service.</p> <p>All of the properties of the pMsg object is initialized and a value is given, and as you see the parameter names, and types are same. </p> <p>Here is the related wsdl:</p> <pre><code> &lt;?xml version="1.0" encoding="utf-8" ?&gt; - &lt;wsdl:definitions xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://localhost:30000/QlogisticIntegration.asmx" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" targetNamespace="http://localhost:30000/QlogisticIntegration.asmx" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"&gt; - &lt;wsdl:types&gt; - &lt;s:schema elementFormDefault="qualified" targetNamespace="http://localhost:30000/QlogisticIntegration.asmx"&gt; - &lt;s:element name="DoAccountingForProducts"&gt; - &lt;s:complexType&gt; - &lt;s:sequence&gt; &lt;s:element minOccurs="0" maxOccurs="1" name="pMsg" type="tns:QlogisticInputEntity" /&gt; &lt;/s:sequence&gt; &lt;/s:complexType&gt; &lt;/s:element&gt; &lt;/s:schema&gt; &lt;/wsdl:types&gt; &lt;/wsdl:definitions&gt; </code></pre> <p>I could not get to anywhere from here, I used fiddler but since I am using a complex datatype i could not see it on the fiddler, Actually I could not set fiddler to localhost on port 30000(the port web service is published), and I have very little idea how to do it.</p> <p>If anyone gives and opinion or a little help, it will be very appreciated.</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload