1 2 Previous Next 23 Replies Latest reply on Mar 2, 2007 11:54 AM by meghanai_99 Go to original post
      • 15. Re: wscompile fails to generate artifacts for included xsd

        Hello Alex,

        Since I did not hear back from you I just wanted to confirm that you received the project file I sent you yesterday.

        Thank you,
        Meghana.

        frostp,

        Glad that I am not the only one getting that error :) Right now I am trying to build JBossWS myself so that I can debug this problem better.

        Meghana

        • 16. Re: wscompile fails to generate artifacts for included xsd
          aguizar

          Hi Meghana,

          I got it. Thanks for sending it.

          -Alejandro

          • 17. Re: wscompile fails to generate artifacts for included xsd

            I made little progress today. I downloaded branch for JBossAS 4.0.5 and trunk for JBossWS. I built both on my machine by following instructions given here -

            http://wiki.jboss.org/wiki/Wiki.jsp?page=JBWSFAQBuildAndInstall

            Now when I deploy my hello process I get different exception with more details but same behavior i.e works with 'tns' portType and not 'evt' portType.

            Caused by: WSDLException: faultCode=INVALID_WSDL: Cannot find output message on
            operation eventNotice on port type: {http://www.eclipse.org/alf/schema/EventBase
            /1}ALFServiceFlow:
             at org.jboss.ws.tools.wsdl.WSDL11Reader.processOperationOutput(WSDL11Rea
            der.java:621)
             at org.jboss.ws.tools.wsdl.WSDL11Reader.processPortTypeOperations(WSDL11
            Reader.java:518)
             at org.jboss.ws.tools.wsdl.WSDL11Reader.processPortType(WSDL11Reader.jav
            a:497)
             at org.jboss.ws.tools.wsdl.WSDL11Reader.processBinding(WSDL11Reader.java
            :901)
             at org.jboss.ws.tools.wsdl.WSDL11Reader.processPort(WSDL11Reader.java:13
            57)
             at org.jboss.ws.tools.wsdl.WSDL11Reader.processPorts(WSDL11Reader.java:1
            341)
             at org.jboss.ws.tools.wsdl.WSDL11Reader.processServices(WSDL11Reader.jav
            a:1311)
             at org.jboss.ws.tools.wsdl.WSDL11Reader.processDefinition(WSDL11Reader.j
            ava:166)
             at org.jboss.ws.tools.wsdl.WSDLDefinitionsFactory.parse(WSDLDefinitionsF
            actory.java:131)
            


            If you look at the code it happens here
            private void processOperationOutput(Definition srcWsdl, Operation srcOperation, WSDLInterfaceOperation destOperation, PortType srcPortType) throws WSDLException
             {
             Output srcOutput = srcOperation.getOutput();
             if (srcOutput == null)
             {
             destOperation.setPattern(Constants.WSDL20_PATTERN_IN_ONLY);
             return;
             }
            
             Message srcMessage = srcOutput.getMessage();
             if (srcMessage == null)
             throw new WSDLException(
             WSDLException.INVALID_WSDL,
             "Cannot find output message on operation " + srcOperation.getName() +
             " on port type: "+ srcPortType.getQName()
             );
            


            But the odd part is srcOperation.getOutput(); call shouldn't have returned any Output in the first place. My operation 'eventNotice' doesn't have any output. So is the problem in javax.wsdl.Output then?

            The class deals with converting 1.1 compliant wsdls to 2.0. May be it needs some setting that I am missing here...I am not familiar with wsdl 2.0

            Thanks,
            Meghana

            • 18. Re: wscompile fails to generate artifacts for included xsd

              After much investigation and debugging I have confirmed that this is a bug in JBPM-BPEL / JBossWS [ I am not sure exactly where it happens during building partnerlinkTypes or internal to JBossWS]. It cannot read 'portType' correctly if it comes from different namespace. I have verified this in both hello and atm samples. I added debugging messages in WSDL11Reader class.

              It seems it cannot read any information about operations when portType is in different namespace. It can get to portType name, namespace and operation names but nothing else. For example,

              if(srcOperation.getStyle()!=null
               && false == OperationType.NOTIFICATION.equals(srcOperation.getStyle()))
               {
              
               processOperationInput(srcWsdl, srcOperation, destOperation, srcPortType);
               }


              srcOperation's getStyle() returns 'null' where as it returns 'ONE-WAY' correctly if my hello.wsdl has same namespace as my imported wsdl file.

              However it can handle it correctly if schema is defined in different namespace. The only usecase that doesn't work is 'portType with different namespace'.

              So I guess I need to file JIRA issue? Please let me know which module is the correct one to file it - JBPM-BPEL or JBossWS. Also what is the average turnaround time for fixing bugs, I know the answer depends on various factors but some idea would be good.

              Meghana

              • 19. Re: wscompile fails to generate artifacts for included xsd
                aguizar

                If operation details are not read into the javax.wsdl.Operation instance, then the problem is neither jbpm-bpel nor jbossws, but wsdl4j. Thanks a lot for your investigation. Now I can start with wsdl4j directly.

                • 20. Re: wscompile fails to generate artifacts for included xsd
                  aguizar

                   

                  So I guess I need to file JIRA issue? Please let me know which module is the correct one to file it - JBPM-BPEL or JBossWS. Also what is the average turnaround time for fixing bugs, I know the answer depends on various factors but some idea would be good.

                  Please file it under JBossWS and post the issue number here.

                  Problems like this may usually be fixed in under a day. What takes time is creating a test case for it plus running the whole test suite to make sure the fix does not cause regressions. The QA tasks take additional 1-2 days.

                  • 21. Re: wscompile fails to generate artifacts for included xsd
                    • 22. Re: wscompile fails to generate artifacts for included xsd
                      aguizar

                      Found a workaround. You can read it in the Jira issue.

                      • 23. Re: wscompile fails to generate artifacts for included xsd

                        Thank you Alex for finding the workaround. :)

                        Meghana

                        1 2 Previous Next