7 Replies Latest reply on Dec 15, 2005 5:27 PM by dugarosnet

    Problem creating port-component in webservices.xml

    mike.chack

      I am having an impossible time creating the <port-component> in the webservices.xml.

      I am using the latest Xdoclet build xdoclet-1.2.3

      Xdoclet tags in source:

      * @wsee.port-component name="ThePort"
      * wsdl-port="MyBeanEndpointPort"
      * service-endpoint-interace="com.sylantro.MyBeanEndpoint"
      * service-endpoint-bean="com.sylantro.MyBean"
      *

      The generated webservices.xml file:

      <?xml version="1.0" encoding="UTF-8"?>

      <webservices
      xmlns="http://java.sun.com/xml/ns/j2ee"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/j2ee_web_services_1_1.xsd"
      version="1.1">

      <webservice-description>



      <webservice-description-name>MyService</webservice-description-name>

      <wsdl-file>WEB-INF/META-INF/wsdl/MyService.wsdl</wsdl-file>
      <jaxrpc-mapping-file>WEB-INF/META-INF/mappings/MyBean_Mapping.xml</jaxrpc-mapping-file>

      </webservice-description>



      If anyone has any insight I would greatly appreciate it. I am goiing nuts!!!!

      Thanks

        • 1. Re: Problem creating port-component in webservices.xml

          Hi,
          Not sure with xDoclet 1.2.3 but this is how it would look with 1.2.2:

           * @wsee.port-component
           * name="ThePort"
           * display-name="blah"
           * description="blah blah"
           *
           * @ejb.interface service-endpoint-class = "com.sylantro.MyBeanEndpoint"
          


          Bruno



          • 2. Re: Problem creating port-component in webservices.xml
            mike.chack

            Thanks,

            I will give it a try. Here is the complete set of xdoclet tags. I already had the servic-endpoint-class. I handcoded and got it to work for the time being. I am currently wrestling with trying to get a documentliteral service working. jboss4.0 is a currently a lot harder to work with than old NET module. Hope it's all worth it!!!!!

            * Below are the xdoclet-related tags needed for this EJB.
            *
            * @ejb.bean name="MyBean"
            * display-name="MyBean"
            * description="Description for MyBean"
            * jndi-name="ejb/MyBean"
            * type="Stateless"
            * view-type="all"
            *
            * @ejb.interface service-endpoint-class="com.sylantro.MyBeanEndpoint"
            * generate="local,service-endpoint"
            *
            * @wsee.port-component name="ThePort"
            * wsdl-port="MyBeanEndpointPort"
            * service-endpoint-interface="com.sylantro.MyBeanEndpoint"
            * service-impl-bean="com.sylantro.MyBean"
            *


            • 3. Re: Problem creating port-component in webservices.xml
              buntjer

              I'm also having a problem with the Port settings created by XDoclet.

              * @wsee.port-component
               * name = "MyPort"
              


              This leads to the following in my webservices.xml file:
               <port-component-name>MyPort</port-component-name>
               <wsdl-port>MyPortPort</wsdl-port>
              


              No matter if I specify a wsdl-port or not, this is what XDoclet generates when the webservices.xml didn't already exist. After manual editting all goes well end the wsdl-port stays teh same after xdocletting.

              Another weirdness in webservices.xml is the location of the wsdl-file and the jaxrpc-mapping file. At first creation the paths to these files are set to:
              <wsdl-file>WEB-INF/META-INF/wsdl/myProject.wsdl</wsdl-file>
              <jaxrpc-mapping-file>WEB-INF/META-INF/jaxrpc-mapping.xml</jaxrpc-mapping-file>
              


              Does anyone know a solution to solve this?

              • 4. Re: Problem creating port-component in webservices.xml

                Following your post I tried xDoclet 1.2.3 and I ran into similar issues plus others (like the WEB-INF directory systematically inserted in some of the paths where JBoss expects META-INF)

                I moved back to 1.2.2 (which supports the wsee doclet with similar limitations) and everything went back ok.

                Bruno

                • 5. Re: Problem creating port-component in webservices.xml

                   

                  "mike.chack@sylantro.com" wrote:
                  I am having an impossible time creating the <port-component> in the webservices.xml.

                  I am using the latest Xdoclet build xdoclet-1.2.3

                  * @wsee.port-component name="ThePort"
                  * wsdl-port="MyBeanEndpointPort"
                  * service-endpoint-interace="com.sylantro.MyBeanEndpoint"
                  * service-endpoint-bean="com.sylantro.MyBean"
                  *



                  According to the xdoclet @wsee documentation
                  http://xdoclet.sourceforge.net/xdoclet/tags/wsee-tags.html
                  the @wsee.port-component has only five possible attributes:
                  name, display-name, small-icon, large-icon and description.

                  There is no attribute wsdl-port service-endpoint-interace or service-endpoint-bean.

                  Jan


                  • 6. Re: Problem creating port-component in webservices.xml

                     

                    "buntjer" wrote:

                    Another weirdness in webservices.xml is the location of the wsdl-file and the jaxrpc-mapping file. At first creation the paths to these files are set to:
                    <wsdl-file>WEB-INF/META-INF/wsdl/myProject.wsdl</wsdl-file>
                    <jaxrpc-mapping-file>WEB-INF/META-INF/jaxrpc-mapping.xml</jaxrpc-mapping-file>
                    


                    If you are referring to the "/WEB-INF" directory that is always added than I agree. It took me hours to find a configuration that works. Now, my ant-task is as follows:
                     <wseedoclet wseeSpec="1.1" jaxrpcMappingFile="jaxrpc-mapping.xml"
                     destDir="src/META-INF" force="true">
                     <deploymentdescriptor name="MobileDatabaseService"/>
                     <fileset dir="src" includes="**/*Bean.java"/>
                     <wsdl/>
                     <jaxrpc-mapping destinationFile="jaxrpc-mapping.xml"/>
                     </wseedoclet>
                    


                    This is the result I get:
                     <wsdl-file>META-INF/wsdl/ClientMobileDatabase.wsdl</wsdl-file>
                     <jaxrpc-mapping-file>META-INF/jaxrpc-mapping.xml</jaxrpc-mapping-file>
                    


                    The resulting webservices.xml only has one error left:
                    It generates the wrong reference for the <service-endpoint-interface> class. But if you know the problem...
                    One ant task later (I only say <replace...>) everything is fine...

                    Jan


                    • 7. Re: Problem creating port-component in webservices.xml
                      dugarosnet

                       

                      "buntjer" wrote:

                      Another weirdness in webservices.xml is the location of the wsdl-file and the jaxrpc-mapping file. At first creation the paths to these files are set to:
                      Code:

                      <wsdl-file>WEB-INF/META-INF/wsdl/myProject.wsdl</wsdl-file>
                      <jaxrpc-mapping-file>WEB-INF/META-INF/jaxrpc-mapping.xml</jaxrpc-mapping-file>




                      If you are referring to the "/WEB-INF" directory that is always added than I agree. It took me hours to find a configuration that works. Now, my ant-task is as follows:
                      Code:

                      <wseedoclet wseeSpec="1.1" jaxrpcMappingFile="jaxrpc-mapping.xml"
                      destDir="src/META-INF" force="true">
                      <deploymentdescriptor name="MobileDatabaseService"/>
                      <fileset dir="src" includes="**/*Bean.java"/>
                      <wsdl/>
                      <jaxrpc-mapping destinationFile="jaxrpc-mapping.xml"/>
                      </wseedoclet>



                      This is the result I get:
                      Code:

                      <wsdl-file>META-INF/wsdl/ClientMobileDatabase.wsdl</wsdl-file>
                      <jaxrpc-mapping-file>META-INF/jaxrpc-mapping.xml</jaxrpc-mapping-file>



                      The resulting webservices.xml only has one error left:
                      It generates the wrong reference for the <service-endpoint-interface> class. But if you know the problem...
                      One ant task later (I only say <replace...>) everything is fine...

                      Jan


                      Hello Jan,

                      Can you be more specific about the remaining error in the webservices.xml file. What was generated? And what did you replace it with?

                      Thanks,
                      Douglas