Hi All,

I have a problem with a SOAP invocation of an ATL COM
object which I have deployed (I feel imperfectly on
the Apache SOAP Server.
I however, do not have any problems with my other
deployed SOAP WebServices at the same SOAP RPCRouter
URL...........

The SOAP Response returns a text/html format error as
the Apache Xerces DOMWriter/DOMFaultListener is not
happy with the format of the SOAP ENV� more
importantly both the Java SOAP Client and the Apache
SOAP Server complain about a �NullPointerReference�.
This leads me more to believe that it basically is a
problem with the way I have registered the SOAP
WebService using the XML deployment Descriptor.

I could not find anyone better source than here to
follow this line of enquiry to possible programmatic
success.

In the meantime, I have sparingly tried something with
the ATL COM DLL which I thought I may report to you:

i) First up, I don�t think that I have registered the
ATL COM DLL properly with the SOAP Server. I need a
proper way of naming the Object (preferably a fully
qualified name); this can be noted in the XML file
which is used as a deployment descriptor for the SOAP
WebService . To extrapolate an earlier experience with
Microsoft based COM DLLs { what I had done with the
Visual Basic COM DLL } -> I had to register the
Project Name and the Class Module name in the VB COM
DLL SOAP WebService Deployment Descriptor(XML file
again) .I need the �progid� value (please note the
relevant portions under). Could you guide me in this
regard??

 
********************
Visual Basic COM DLL            
********************

<!--Apache SOAP specific deployment descriptor (ie
loads this service into Apache SOAP.-->

<isd:service
xmlns:isd="http://xml.apache.org/xml-soap/deployment";

             id="urn:demo:hello">

  <isd:provider
type="org.apache.soap.providers.com.RPCProvider"

                scope="Application"

                methods="Hello">

    <isd:java class="required not needed for
COMProvider"/>

    <isd:option key="progid" value="Project1.Class1"
/>

  </isd:provider>

 
<isd:faultListener>org.apache.soap.server.DOMFaultListener</isd:faultListener>

</isd:service>

 

 
**********************
Visual C++ ATL Com DLL
**********************
 

<!--Apache SOAP specific deployment descriptor (ie
loads this service into Apache SOAP.-->

<isd:service
xmlns:isd="http://xml.apache.org/xml-soap/deployment";
id="urn:demo:ATL">

  <isd:provider
type="org.apache.soap.providers.com.RPCProvider"

      scope="Application" methods="DllMain">

    <isd:java class="required not needed for
COMProvider"/>

    <isd:option key="progid"
value="Day1Server.MyFirstATLObject" />

    <!-- <isd:option key="threadmodel"
value="SINGLEAPARTMENTTHREADED" />

    <isd:option key="threadmodel"
value="APARTMENTTHREADED" />

    <isd:option key="threadmodel"
value="MULTITHREADED" /> 

    -->

    

        <isd:option key="threadmodel"
value="APARTMENTTHREADED" />

  </isd:provider>

<isd:faultListener>

org.apache.soap.server.DOMFaultListener

</isd:faultListener>

</isd:service>

 

 

ii) Next, I was able to register an ATL COM DLL which
is not using a BSTR (tried int*, char*�successfully
with minor though �telling� code tweaking), but the
STL Registration process requires that a pointer be
used due to the constraints imposed by the �atl.h�
header file (standard) � btw can we change this header
so that it accepts non-pointer based datatypes? (I
foresee that there might be more code other than the
header which we may need to update in the �Microsoft�
implementation of ATL).

 

 

iii) Further, I was considering the reverse approach
-> ATL COM Client to non-Microsoft SOAP WebService,
say, Java.

 

iv) As of time=now, I haven�t tried testing a separate
box(computer)->>[ Client on one box and server on
another box ] scenario (memory heap allocation problem
possibly??)

 

v) Also, Java handles BSTR; it refers to it as
BinaryString!


To conclude, IMHO, I feel that the Java
NullPointerException is being thrown mainly due to the
fact that the fully qualified object name is not
available.


Please respond ASAP.

Sincerely,
<->{ R2D2 }<->

 

 

 

 

 

 



 



__________________________________________________
Do You Yahoo!?
Everything you'll ever need on one web page
from News and Sport to Email and Music Charts
http://uk.my.yahoo.com

--
To unsubscribe, e-mail:   <mailto:soap-dev-unsubscribe@;xml.apache.org>
For additional commands, e-mail: <mailto:soap-dev-help@;xml.apache.org>

Reply via email to