5 Replies Latest reply on Sep 22, 2004 8:30 AM by thomas.diesler

    Mapping of types not directly referenced by operations

    igorfie

      I am playing with j2ee 1.4 webservice on JBoss 4.0 and I've noticed that ServiceDescription only configures WSDl<->Java mapping for types directly referenced as operation input/output parameters. I wonder what is the reason behind this implementation? Should JBoss map all complex types mentioned in the WSDL or in the jaxrpc mapping file? This would eliminate need to use ws4ee-deployment.xml for many wsdl/mapping files generated by wscompile from jwsdp.

      I think I'll be able to provide a patch if there are no compelling reasons to keep the current behaviour.

      Regards,
      Igor

        • 1. Re: Mapping of types not directly referenced by operations
          thomas.diesler

          Ideed, if JBoss could parse the XMLSchema type definitions in the wsdl and the files referenced from it, this would make ws4ee-deployment obsolete.

          This is not a trivial tasked, but you are of course welcome to contribute. This is the way we want to go with JBossWS anyway.

          • 2. Re: Mapping of types not directly referenced by operations
            igorfie

            Ok, I have an incomplete/naive patch that adds all mappings defined in jaxrpc-mapping.xml to the wsdd. Not as perfect as parsing types/schema element of the wsdl, but works fine for the metadata I get from wscompile. Let me know if you are interested in this patch.

            • 3. Re: Mapping of types not directly referenced by operations
              thomas.diesler

              So the issue is, that when you have user defined types inside other user defined types that are not directly referenced from a WSDL operation they do not get included in the axis wsdd, right?

              You are saying if the (generated) jaxrpc-mapping.xml contains those sub types we can also provide type mappings for them in the wsdd.

              AFAIK, the wscompile that comes with the JWSDP-1.4 does not generate jaxrpc-mapping.xml. Do you use the one from S1AS?

              Yes your patch would be useful.

              • 4. Re: Mapping of types not directly referenced by operations
                igorfie

                 

                "tdiesler" wrote:
                So the issue is, that when you have user defined types inside other user defined types that are not directly referenced from a WSDL operation they do not get included in the axis wsdd, right?


                Yes, the issue is with nested types not directly referenced by wsdl operations.

                "tdiesler" wrote:
                You are saying if the (generated) jaxrpc-mapping.xml contains those sub types we can also provide type mappings for them in the wsdd.

                AFAIK, the wscompile that comes with the JWSDP-1.4 does not generate

                jaxrpc-mapping.xml. Do you use the one from S1AS?


                wscompile from JWSDP-1.4 does generate jaxrpc-mapping.xml with all user defined datatypes I want. My patch adds all type mappings (including those for not-directly-referenced sub types) from jaxrpc-mapping.xml to the wsdd.

                Btw, I am planning on putting together "JBossWS with XDocLet and wscompile" wiki page, but it very much depends on how much spare time I will have. Let me know if you have particular name preferences for this wiki page ;-)

                "tdiesler" wrote:
                Yes your patch would be useful.


                As I mentioned before, the patch is rather simple/naive, but I'll post it to SF anyways, hopefully by the end of today (EST).

                Regards,
                Igor

                • 5. Re: Mapping of types not directly referenced by operations
                  thomas.diesler

                  The wiki page should be named WS[whatever]