axis-c-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Samisa Abeysinghe <sabeysin...@virtusa.com>
Subject Re: Newbie questions and some weird behavior
Date Thu, 05 May 2005 15:18:17 GMT
I have added this how to content for windows into the win install guide
and commited this into cvs. 
Please see
http://cvs.apache.org/viewcvs.cgi/*checkout*/ws-axis/c/docs/wininstall-guide.html#simpleaxis

Plan to update the Linux guide as well.

Thanks,
Samisa...

On Thu, 2005-05-05 at 14:05, Samisa Abeysinghe wrote:
> You could test this with simple axis server and debug the same on Linux
> with gdb.
> 
> I have written a small help file to let you know how to get simple axis
> server up and running on Windows. I hope you could adopt this to Linux.
> I have it http://people.apache.org/~samisa/SimpleAxisServer_HOWTO.txt
> for the time being, till I check the rest of the docs and commit this to
> CVS.
> 
> Will have a look at you wsdl and see if I could get it working. Please
> try simple axis server in the mean time.
> 
> Thanks,
> Samisa...
> 
> On Wed, 2005-05-04 at 16:56, Yampolsky, Robert wrote:
> > I'm an axis newbie, and am having trouble getting my first service to
> > work.  I am able to build and deploy a simple MD5Service I found on
> > the web, so I think my axis and apache installations are working ok. 
> > It's axiscpp 1.5 and apache 2.0.46 (RHEL 3.0).  I installed axiscpp
> > from pre-built binaries in the default /usr/local/axiscpp_deploy
> > directory.
> > 
> > I've included the server.wsdd entry and wsdl file below in case I'm
> > just doing this all wrong.  Thanks in advance for putting up with my
> > (probably clueless) questions.  I've been trying to educate myself on
> > this via Google, etc, and have found some good docs, but still can't
> > get it to work.
> > 
> > Anyway, at one point today (after restarting Apache, this went away),
> > I would run my client repeatedly and get one of the following
> > exceptions (wierdly, the exception would change without any changes to
> > the code):
> > 
> > Exception : Soap method is not allowed to invoke
> >         (I read in this list that this is caused by a missing
> > SoapAction, but it's there in my wsdl and in the generated code)
> > 
> > Exception : Requested service is not registerd at the server
> >         (I originally had CPP:RPC, which I figured was causing this -
> > since my binding style is document, but I still got it sometimes)
> > 
> > Exception : Soap content is not valid
> >         (your guess is as good as mine - I don't know yet if my soap
> > content's any good)
> > 
> > 
> > After restarting apache, the service seems to run.  At least the
> > client doesn't log any exceptions, but I get an empty response from
> > the service (null pointers for all the return values).  Not knowing
> > how to debug the service, I tried having it open a file and log info
> > there.  But when I add code to my server to do that, I get the
> > following exception on running my client:
> > 
> > Exception : HTTPTransportException:Input streaming error while getting
> > data Timed out waiting for HTTP header message (1).
> > 
> > This exception occurs immediately, so I don't know how it could be a
> > timeout condition.
> > 
> > For yucks, I tried replacing the fopen and fprintf's with a simple
> > sprintf to a character buffer and got the same exception.  When I
> > comment out all the logging code the service seems to 'work' again
> > (with null return values).  At least that gives some kind of
> > indication that my server is indeed running.
> > 
> > So, my main question is, how are you supposed to debug axiscpp
> > services?  Is the simple_axis_server thing supposed to facilitate
> > this?  If so, any instructions?
> > 
> > 
> > Some other questions:
> > 
> > 1. Even though I've got complex types as the inputs and outputs of my
> > service, xwsdl2ws generates methods that take all of the fields from
> > the complex types as individual parameters (rather than passing and
> > returning a structure).  When I changed my binding style to "rpc", I
> > got structure-based methods generated.  Is that just 'the way it
> > works', or can I control this?  Is one kind of method better than the
> > other (the struct way seems more self-documenting than having
> > Value0..7 and OutValue0..5?
> > 
> > 2. When I try to bring up ?wsdl URL's for my service or the axis
> > 'Calculator' sample (http://localhost/axis/calculator?wsdl), Apache
> > logs a segfault.  Do I have to explicitly put the wsdl file somewhere
> > (or point to it in axiscpp.conf or elsewhere)?
> > 
> > 
> > ========================
> > 
> > Here's my server.wsdd entry:
> > 
> >         <service name="HUB_TO_HUB" provider="CPP:DOCUMENT"
> > description="TVB Hub-to-Hub Service">
> >                 <parameter name="allowedMethods" value="Hub_Request
> > "/>
> >                 <parameter name="className"
> > value="/usr/local/axiscpp_deploy/lib/libhub2hub.so" />
> >         </service>
> > 
> > Here's the wsdl:
> > 
> > <?xml version="1.0" encoding="utf-8"?>
> > <wsdl:definitions
> >    xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
> >    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
> >    xmlns:s="http://www.w3.org/2001/XMLSchema"
> >    xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
> >    xmlns:tns="http://localhost/axis/HUB_TO_HUB"
> >    xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/"
> >    xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
> >    targetNamespace="http://localhost/axis/HUB_TO_HUB"
> >    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
> > 
> >   <wsdl:types>
> >     <s:schema elementFormDefault="qualified"
> > targetNamespace="http://localhost/axis/HUB_TO_HUB">
> >       <s:element name="Hub_Request" type="tns:HUB_IN" />
> >       <s:complexType name="HUB_IN">
> >         <s:sequence>
> >           <s:element minOccurs="0" maxOccurs="1" name="TO_TP"
> > type="s:string" />
> >           <s:element minOccurs="0" maxOccurs="1" name="FROM_TP"
> > type="s:string" />
> >           <s:element minOccurs="0" maxOccurs="1" name="TO_HUB"
> > type="s:string" />
> >           <s:element minOccurs="0" maxOccurs="1" name="FROM_HUB"
> > type="s:string" />
> >           <s:element minOccurs="0" maxOccurs="1" name="UID"
> > type="s:string" />
> >           <s:element minOccurs="0" maxOccurs="1" name="APIKEY"
> > type="s:string" />
> >           <s:element minOccurs="0" maxOccurs="1" name="ROUTING"
> > type="s:string" />
> >           <s:element minOccurs="0" maxOccurs="1" name="MESSAGE"
> > type="s:string" />
> >         </s:sequence>
> >       </s:complexType>
> >     </s:schema>
> >     <s:schema elementFormDefault="qualified">
> >       <s:element name="Hub_Response" nillable="true"
> > type="tns:MSG_RECPT" />
> >       <s:complexType name="MSG_RECPT">
> >         <s:sequence>
> >           <s:element minOccurs="0" maxOccurs="1" name="UID"
> > type="s:string" />
> >           <s:element minOccurs="0" maxOccurs="1" name="TO_TP"
> > type="s:string" />
> >           <s:element minOccurs="0" maxOccurs="1" name="FROM_TP"
> > type="s:string" />
> >           <s:element minOccurs="0" maxOccurs="1" name="STATUS"
> > type="s:string" />
> >           <s:element minOccurs="0" maxOccurs="1" name="STATUS_MSG"
> > type="s:string" />
> >           <s:element minOccurs="0" maxOccurs="1" name="TIMESTAMP"
> > type="s:string" />
> >         </s:sequence>
> >       </s:complexType>
> >     </s:schema>
> >   </wsdl:types>
> > 
> >   <wsdl:message name="Hub_RequestIn">
> > 
> >   <wsdl:message name="Hub_RequestIn">
> >     <wsdl:part name="Hub_Request" element="tns:Hub_Request" />
> >   </wsdl:message>
> >   <wsdl:message name="Hub_RequestOut">
> >     <wsdl:part name="Hub_Response" element="tns:Hub_Response" />
> >   </wsdl:message>
> > 
> >   <wsdl:portType name="HUB_TO_HUB">
> >     <wsdl:operation name="Hub_Request">
> >       <wsdl:input message="tns:Hub_RequestIn" />
> >       <wsdl:output message="tns:Hub_RequestOut" />
> >     </wsdl:operation>
> >   </wsdl:portType>
> > 
> >   <wsdl:binding name="HUB_TO_HUBSoap" type="tns:HUB_TO_HUB">
> >     <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
> > style="document" />
> >     <wsdl:operation name="Hub_Request">
> >       <soap:operation soapAction="HUB_TO_HUB#Hub_Request"
> > style="document" />
> >       <wsdl:input>
> >         <soap:body use="literal" />
> >       </wsdl:input>
> >       <wsdl:output>
> >         <soap:body use="literal" />
> >       </wsdl:output>
> >     </wsdl:operation>
> >   </wsdl:binding>
> > 
> >   <wsdl:service name="HUB_TO_HUB">
> >     <wsdl:port name="HUB_TO_HUB" binding="tns:HUB_TO_HUBSoap">
> >       <soap:address location="http://localhost/axis/HUB_TO_HUB" />
> >     </wsdl:port>
> >   </wsdl:service>
> > </wsdl:definitions>
> > 
> > R o b   Y a m p o l s k y
> > Harris Corporation
> > ryampols@harris.com
> > (212) 303 - 4250
-- 
Samisa Abeysinghe <sabeysinghe@virtusa.com>
Virtusa Corporation

Mime
View raw message