Hi.

Thank you for your help. Now I have access to my services again. The only problem with this new configuration is that it is not possible to deploy services using the adminClient. Then there occurs an http 400 error with remark no POST available for the given url. But this doesn't matter, the old deploymentdescriptors work well ;) and in the old configuration deployment works.

Thanks and best regards,
Oli

----- Original Message ----- From: "Grossberger, Guenter" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Tuesday, January 10, 2006 4:47 PM
Subject: RE: how to change location of web service classes


Hi, again!

The url-pattern is relative to the web app. I presume your application is called "the-struts-application" and resides in tomcat/webapps/the-struts-application. The url-pattern you wrote earlier is ok:
   <servlet>
       <servlet-name>AxisServlet</servlet-name>
       <display-name>Apache-Axis Servlet</display-name>
       <servlet-class>org.apache.axis.transport.http.AxisServlet</servlet-class>
   </servlet>

   <servlet-mapping>
       <servlet-name>AxisServlet</servlet-name>
       <url-pattern>/servlet/AxisServlet</url-pattern>
   </servlet-mapping>

   <servlet-mapping>
       <servlet-name>AxisServlet</servlet-name>
       <url-pattern>/services/*</url-pattern>
   </servlet-mapping>


In your WSDL you have to specify the different location:
<WSDL:service name="MyService">
<WSDL:port name="MyPort" binding="MyBinding">
<SOAP:address location="http://myserver:8080/the-struts-application/services"/>
</WSDL:port>
</WSDL:service>

From this WSDL2Java should generate the correct ServiceLocator with:
   // Use to get a proxy class for MyPort
private java.lang.String MyPort_address = "http://myserver:8080/the-struts-application/services";;

You can test the Axis installation by entering http://localhost:8080/WebRecherche/servlet/AxisServlet in your Web browser. Tomcat routes the request to the Axis servlet based on the servlet mapping you defined.

Bye,
Günter


-----Original Message-----
From: Oliver Heinze [mailto:[EMAIL PROTECTED]
Sent: Tuesday, January 10, 2006 3:41 PM
To: [email protected]
Subject: Re: how to change location of web service classes

Ah ok, that's the point. Sorry for this silly question, but
I'm very new to
stuts and web services. So the configuration issue is a litle
bit confusing
me ;)
How can I point the new location to the servlet in the web.xml ? Like:

<servlet-mapping>
      <servlet-name>AxisServlet</servlet-name>

<url-pattern>/the-struts-application/WEB-INF/lib/axis.jar</url
-pattern>
    </servlet-mapping>

??

Thank you.
Oli


----- Original Message ----- From: "Grossberger, Guenter" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Tuesday, January 10, 2006 3:14 PM
Subject: RE: how to change location of web service classes


Of course the location in the WSDL and in the code must be
changed from
http://server/axis/services/... to
http://server/the-struts-application/services/... or whatever
you wrote in
web.xml, too.

Bye,
Günter


> -----Original Message-----
> From: Oliver Heinze [mailto:[EMAIL PROTECTED]
> Sent: Tuesday, January 10, 2006 2:53 PM
> To: [email protected]
> Subject: Re: how to change location of web service classes
>
> Hi.
> Me too, but it does not work. I think axis is missing the
> 'axis' folder
> which is given by default in the path.
> Do you also changed something in servicelocator.class i.e.
> the  endpoint, or
> is it still the same?
>
> Cheers,
> Oli
> ----- Original Message ----- > From: "Grossberger, Guenter" <[EMAIL PROTECTED]>
> To: <[email protected]>
> Sent: Tuesday, January 10, 2006 2:22 PM
> Subject: RE: how to change location of web service classes
>
>
> Hi!
>
> I've got server-config.wsdd in the directory
> webapps/the-struts-application/WEB-INF and it works. This is
> also where Axis
> puts it if you run the admin client.
>
> Best regards,
> Günter
>
> > -----Original Message-----
> > From: Oliver Heinze [mailto:[EMAIL PROTECTED]
> > Sent: Tuesday, January 10, 2006 1:38 PM
> > To: [email protected]
> > Subject: Re: how to change location of web service classes
> >
> > OK. I copyed all files to the new location including all axis
> > files and
> > updated the web.xml. But when I call my service I get the
> > following error:
> >
> > AxisFault
> >  faultCode: {http://xml.apache.org/axis/}HTTP
> >  faultSubcode:
> >  faultString: (404)/axis/services/WSIntern
> >
> > In my opinion I also have to configure the axis servlet. How
> > can I tell the
> > axis servlet where to find the server-config.wsdd ? Because
> > the default path
> > webapps/axis/WEB-INF/ does no longer exist.
> >
> > The axis concerning part of my web.xml is the following:
> >
> > <servlet>
> >       <servlet-name>AxisServlet</servlet-name>
> >       <display-name>Apache-Axis Servlet</display-name>
> >       <servlet-class>
> >           org.apache.axis.transport.http.AxisServlet
> >       </servlet-class>
> >     </servlet>
> >
> > servlet-mapping>
> >         <servlet-name>AxisServlet</servlet-name>
> >         <url-pattern>/servlet/AxisServlet</url-pattern>
> >       </servlet-mapping>
> >
> >       <servlet-mapping>
> >         <servlet-name>AxisServlet</servlet-name>
> >         <url-pattern>/services/*</url-pattern>
> >       </servlet-mapping>
> >
> > Thanks for your help.
> >
> > Cheers,
> > Oli
> >
> > ----- Original Message ----- > > From: "Grossberger, Guenter" <[EMAIL PROTECTED]>
> > To: <[email protected]>
> > Sent: Tuesday, January 10, 2006 11:28 AM
> > Subject: RE: how to change location of web service classes
> >
> >
> > Hi!
> >
> > I'd move all the Axis files (including all jars) to the
new location
> > /the-struts-application/WEB_INF/. Then you would have to
> > change your web.xml
> > to direct the Web Service calls to the Axis servlet instead
> > of your struts
> > servlet(s) based on the URL. I.e. copy the <servlet> and
> > <servlet-mappings>
> > from the Axis web.xml to your application.
> >
> >
> > Best regards,
> >
> > --
> > Günter Grossberger
> > Consultant             Tel: +43 1 329 50 161
> > Software AG Austria    Fax: +43 1 329 50 171
> > Guglgasse 7-9          GSM: +43 676 833 29 261
> > 1030 Wien              http://www.softwareag.com/austria
> >
> >
> > > -----Original Message-----
> > > From: AMC Clinixx Test Account [mailto:[EMAIL PROTECTED]
> > > Sent: Tuesday, January 10, 2006 11:15 AM
> > > To: [email protected]
> > > Subject: how to change location of web service classes
> > >
> > > Hi all.
> > >
> > > I installed axis into tomcats webapps folder and created my
> > > web services in
> > > tomcat/webapps/axis/WEB_INF/classes. Everything works fine.
> > > But now I want
> > > to integrate my web service classes into an existing struts
> > > application for
> > > using same property files and so on.
> > > In different words: I want to have my classes in
> > > /the-struts-application/WEB_INF/classes/ instead of
> > > tomcat/webapps/axis/WEB_INF/classes.
> > >
> > > How can I tell the axis servlet to look for the classes in
> > > the new location?
> > > Which files I have to change? Do I have to generate a new
> > > context inside the
> > > server.xml of tomact?
> > >
> > > Please help me. Some hints would be nice. Thanks.
> > >
> > > Cheers,
> > > Oli
> > >
> > >
> >
> >
>
>



Reply via email to