-
1. Re: purchasing example has error when using switchyard simulator
jeffdelong Apr 10, 2013 2:15 PM (in response to jeffdelong)When I deploy store service I get
JBAS014777: Services which failed to start: service jboss.deployment.unit."purchasing-Store-0.0.1-SNAPSHOT.jar".SwitchYardService: org.jboss.msc.service.StartException in service jboss.deployment.unit."purchasing-Store-0.0.1-SNAPSHOT.jar".SwitchYardService: org.switchyard.exception.SwitchYardException: Service operations on a Java interface can only throw one type of exception. 12:13:11,652 ERROR [org.jboss.as.server.deployment.scanner] (DeploymentScanner-threads - 1) {"JBAS014653: Composite operation failed and was rolled back. Steps that failed:" => {"Operation step-2" => {"JBAS014671: Failed services" => {"jboss.deployment.unit.\"purchasing-Store-0.0.1-SNAPSHOT.jar\".SwitchYardService" => "org.jboss.msc.service.StartException in service jboss.deployment.unit.\"purchasing-Store-0.0.1-SNAPSHOT.jar\".SwitchYardService: org.switchyard.exception.SwitchYardException: Service operations on a Java interface can only throw one type of exception."}}}}
So I guess a single fault is still a limitation of SwitchYard?
-
2. Re: purchasing example has error when using switchyard simulator
objectiser Apr 10, 2013 2:51 PM (in response to jeffdelong)Yes, you beat me to it
Let me know if there are still issues after commenting out the additional exception.
Regards
Gary
-
3. Re: purchasing example has error when using switchyard simulator
jeffdelong Apr 11, 2013 11:47 PM (in response to objectiser)So I commented out the second exception, and the Simulation is successful. However when I deploy to SY 0.8 and execute the StoreService, I get an exception when the CreditAgencyService is invoked:
21:40:56,571 INFO [org.switchyard.handlers.MessageTrace] (http--127.0.0.1-8080-1)
------- Begin Message Trace -------
Service -> {http://www.savara.org/purchasing/Store}Store
Operation -> buy
Phase -> IN
State -> OK
Exchange Context ->
Message Context ->
org.switchyard.messageId : b298c1ba-ffb8-4877-9a83-8386e9abc739
org.switchyard.contentType : {http://www.jboss.org/examples/store}BuyRequest
org.switchyard.soap.messageName : buyRequest
Message Content ->
<?xml version="1.0" encoding="UTF-8"?><stor:BuyRequest customer="Fred" id="1" product="100" xmlns:stor="http://www.jboss.org/examples/store"/>
------ End Message Trace -------
21:40:56,584 INFO [stdout] (http--127.0.0.1-8080-1) CustomerName is: Fred
21:40:56,586 INFO [org.switchyard.handlers.MessageTrace] (http--127.0.0.1-8080-1)
------- Begin Message Trace -------
Service -> {http://www.savara.org/purchasing/Store}CreditAgency
Operation -> creditCheck
Phase -> IN
State -> OK
Exchange Context ->
Message Context ->
org.switchyard.messageId : 30f611fa-1869-4202-84ad-389ed9516b44
org.switchyard.contentType : java:org.jboss.examples.creditagency.CreditCheckType
Message Content ->
org.jboss.examples.creditagency.CreditCheckType@1e07c8a
------ End Message Trace -------
21:40:56,595 INFO [org.switchyard.handlers.MessageTrace] (http--127.0.0.1-8080-1)
------- Begin Message Trace -------
Service -> {http://www.savara.org/purchasing/Store}CreditAgency
Operation -> creditCheck
Phase -> OUT
State -> FAULT
Exchange Context ->
org.switchyard.exchangeDurationMS : 9
org.switchyard.exchange.transaction.beforeInvoked : true
Message Context ->
org.switchyard.messageId : d45ff059-a8c7-49fd-9c28-b7f7caaefbc7
org.switchyard.contentType : {http://www.jboss.org/examples/creditAgency}CustomerUnknown
org.switchyard.relatesTo : 30f611fa-1869-4202-84ad-389ed9516b44
Message Content ->
org.switchyard.HandlerException: org.switchyard.exception.SwitchYardException: Failed to unmarshall for type 'java:org.jboss.examples.creditagency.CreditCheckType'.
--- Caused by org.switchyard.exception.SwitchYardException: Failed to unmarshall for type 'java:org.jboss.examples.creditagency.CreditCheckType'.
--- Caused by javax.xml.bind.MarshalException: null
--- Caused by com.sun.istack.SAXException2: unable to marshal type "org.jboss.examples.creditagency.CreditCheckType" as an element because it is missing an @XmlRootElement annotation
------ End Message Trace -------
21:40:56,614 ERROR [org.switchyard.bus.camel.audit.FaultProcessor] (http--127.0.0.1-8080-1) Unexpected exception thrown during handling FAULT response. This exception can not be handled, thus it's marked as handled and only logged. If you don't want see messages like this consider handling exceptions in your handler logic: org.switchyard.exception.SwitchYardException: Cannot convert from 'org.switchyard.HandlerException' to 'javax.xml.transform.dom.DOMSour
-
4. Re: purchasing example has error when using switchyard simulator
objectiser Apr 12, 2013 9:39 AM (in response to jeffdelong)Looks like there has been a change in the JAXB transformation in switchyard (https://github.com/jboss-switchyard/core/commit/71a30b6c0503c9c9f7625c4c3c46c48871d3b70b) which is causing the problem when running the example in 0.8.
The tools were built against 0.7, and that is why the simulation works.
Need to do some investigation to determine if there is something lacking from the savara generation, or whether the switchyard jaxb transformer is being too strict.
Regards
Gary
-
5. Re: purchasing example has error when using switchyard simulator
objectiser Apr 15, 2013 4:32 AM (in response to objectiser)Short term solution is to add:
@XmlRootElement(name="CreditCheckRquest") to CreditCheckType.java in CreditAgency and Store services
@XmlRootElement(name="CreditRating") to CreditRatingType.java in CreditAgency and Store services
etc.
The problem is that the jaxb generator doesn't alway add this annotation when there is a type and element defined. With the change to how switchyard does jaxb marshalling, it has shown up this issue.
I'll start a thread with switchyard team to see whether this workaround can be avoided in the next version of switchyard.
Regards
Gary
-
6. Re: purchasing example has error when using switchyard simulator
jeffdelong May 10, 2013 4:30 PM (in response to objectiser)The is an additional issue as well that I found when deploying to SwitchYard 1.0-SNAPSHOT. It has to do with WSDL imports vs Schema imports. See