1 Reply Latest reply on Apr 22, 2008 5:09 PM by moksha2007

    Problem accessing generated WSDL

    moksha2007

      Hi,

      I am using Jboss 4.2.2.GA in the following situation; multiple jboss instances and virtual hosts on a single machine. I am also using apache with ajp/proxy to forward requests to the appropriate virtual hosts.

      For the webservices, I have stateless EJB with annotations, and I can see Jboss generates the wdsl file, but binds it where it becomes difficult to reach it. Something like 127.0.0.105:8080 (virtual ip).

      To solve that, I am using jboss' WebContext annotation (jbossws-spi). In addition, I am overriding the property 'webServiceHost' in the jboss-beans.xml (from the jbossws.sar/jbossws.beans/META-INF). As result I seeing a 'correct' address in the server.log/ServerEndPointMetaData. However when using the URL it is being picked up by the regular web site that is accompied with the ear-file. I am doing something wrong here? Or do I need to add a mapping/reference in the web.xml to forward web-service requests to the appropriate servlet?

      Any suggestions? Thanks in advance,

      Mike Ahlers

        • 1. Re: Problem accessing generated WSDL
          moksha2007

          Hi,

          Did a little more investigation, and it seems the problem is somewhere in the server.xml (jboss-web.deployer), at least that is what I think.

          In there I have a Host configuration that matches with the virtual host. Meaning all request go through that specific web application, including the web-service requests.

          <Host name="x"
           errorReportValveClass="org.apache.catalina.core.StandardHostValve"
           autoDeploy="false"
           deployOnStartup="false"
           deployXML="false"
           configClass="org.jboss.web.tomcat.security.config.JBossContextConfig"
          >
           <Alias>x.xxx.com</Alias>
           ...
          


          and apache proxy config:
          <VirtualHost *:80>
           ServerName x.xxx.com
           ServerSignature Off
           ProxyPass / ajp://127.0.0.105:8009/
           ProxyPassReverse / ajp://127.0.0.105:8009/
          </VirtualHost>
          


          Using that, I cannot reach the 'standard' services (sars) like jmx-console and such, but my application just fine.

          When I add another virtual host config in apache, like:
          <VirtualHost *:80>
           ServerName y.xxx.com
           ServerSignature Off
           ProxyPass / ajp://127.0.0.105:8009/
           ProxyPassReverse / ajp://127.0.0.105:8009/
          </VirtualHost>
          


          Then, I can see the wsdl, but it is located under http://y.xxx.com/...?wsdl

          How to configure the server.xml correctly? I am using a default server.xml with one addition, namely the host config as mentioned above.

          Any help on this?

          Mike