axis-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From pino lollo <vaffartibened...@yahoo.it>
Subject How to run AXIS2 fine on Tomcat behind an Apache server.
Date Fri, 27 Mar 2009 16:10:12 GMT




How to run AXIS2 fine on Tomcat behind an Apache server. 

I have problem with internet 80 or intranet 8080 wsdl invocation. 

Is there anyone who can show me how to do or can tell me where I am wrong? 




Thanks in advance. 

Marco 




1 Adsl internet connection, 

1 public ip address: 83.211.93.144, 

1 router modem, 

1 lan, 

1 pc server (internal ip address 192.168.1.10) 




On the pc server there are: 

1 Apache http server 2.2, 1 Tomcat 6,0. 

Tomcat responds port 8080, Apache http server responds to internet at port 80. 

I have same http applications on Apache http server that work and you can see on internet
at the address: www.acgcomplementi.com 

I have also same web applicationes on Tomcat that respond in the lan to port 8080 and are
redirected by Apache Http server on Internet: www.p2p2mpa.com and respond there on port 80.


To do this I configured a virtual server on the modem router so the requests that arrive from
internet at the address 83.211.93.144 and port 80 are redirected to the pc server 192.168.1.10:80,
and this works. 




There, on the pc server, the requests on the port 80 are managed by the Apache Http server.
I worked on the file httpd.conf, and I activated the proxy module with these comands: 

LoadModule proxy_module modules/mod_proxy.so 

LoadModule proxy_http_module modules/mod_proxy_http.so 

LoadModule proxy_connect_module modules/mod_proxy_connect.so 




and I added also these directives: 




ProxyPass /p2p2mpa/ http://localhost:8080/p2p2mpa/ 

ProxyPass /sito/ http://localhost:8080/sito/ 

ProxyPass /ws_p2p2mpa/ http://localhost:8080/ws_p2p2mpa/ 




  
(/sito/ is for www.acgcomplementi.com). 

/p2p2mpa/ is for www.p2p2mpa.com 

/ws_p2p2mpa/ if for the axis2 webservice that doesn't work. 




Till now it is all fine. 

Here began the problems. 




I developed, using eclipse, a web application that exposes some webservices. I used axis2.


I placed the war file (ws_p2p2mpa.war) in the webapps Tomcat directory. 




If I invoke the the wsdl file in the lan all works fine: 




at the address http://192.168.1.10:8080/ws_p2p2mpa/ 

the axis2 welcom page responds correctly. 




At the address 

http://192.168.1.10:8080/ws_p2p2mpa/services/Ws?wsdl 




Axis2/Tomcat answers with the right wsdl file: it has the right endpoint: 







- <wsdl:port name="WsHttpSoap11Endpoint" binding="ns:WsSoap11Binding"> 

  <soap:address location="http://192.168.1.10:8080/ws_p2p2mpa/services/Ws.WsHttpSoap11Endpoint/"
/> 

  </wsdl:port> 







Instead if I invoke the wsdl file from internet I have some problems: 

If I use this address: 




http://83.211.93.144/ws_p2p2mpa/ 

Axis2 responds, I see the Axis2 welcome page but I cannot see correctly the Axis2 wing images;





if I navigate and I select a link, for example: “Services” it shows and uses this wrong
address: 

http://192.168.1.10:8080/ws_p2p2mpa/services/listServices as it was invoked from the lan and
not internet, I aspected: 

  

http://83.211.93.144/ws_p2p2mpa/services/listServices 







If I invoke the wsdl and I use this address 

http://83.211.93.144/ws_p2p2mpa/services/Ws?wsdl 

I see the wsdl file but it has as endpoint address the same it has if it is invoked from the
lan: 




http://192.168.1.10:8080/ws_p2p2mpa/services/Ws.WsHttpSoap11Endpoint/ 




I aspected http://83.211.93.144/ws_p2p2mpa/services/Ws.WsHttpSoap11Endpoint/ 










Therefore I looked around to find a solution, and I found to manage the axis2.xml configuration
file. 

I changed the file 

\Apache Software Foundation\Tomcat 6.0\webapps\ws_p2p2mpa\WEB-INF\conf\axis2.xml 




in this way: 




first, in the transportReceiver section I added this parameter proxyPort = 80: 

that is a look of the transposrtReceiver section: 




.... 

- <transportReceiver name="http" class="org.apache.axis2.transport.http.SimpleHTTPServer">


  <parameter name="port">8080</parameter> 

  <parameter name="proxyPort">80</parameter> 
........
but nothing changed. 




Two, I added this instruction: 



<parameter name="httpFrontendHostUrl">http://83.211.93.144/ws_p2p2mpa</parameter>
(http without s). 




Then I tested it but it doesn't work again: 




the end point address in the wsdl file doesn't changed, it is always the same, if I invoke
from internet or lan the end point address it is always 

http://192.168.1.10:8080/ws_p2p2mpa/services/Ws.WsHttpSoap11Endpoint/ 







If I invoke the axis2 welcome page from internet it work fine, instead if I invoke the axis2
welcome page from the LAN now it doesn't work. 










I tried with acxis2 1.3 and tomacat 5.0 and apache server 2.2, then I changed and I am working
now with axis2 1.41 and Tomcat 6.0. 

I also added in the httpd.conf the directive: 




ProxyPassReverse /ws_p2p2mpa/ http://localhost:8080/ws_p2p2mpa/ 







It is always the same. 
  
I am a newbie, it is an excercise that I am trying to do,  it is not for work for now. 
It 2 months that I have this problem and really I looked all around for a solution. 
Help me please. 




Thanks 

Marco Andreolli



      
Mime
View raw message