[
https://issues.apache.org/jira/browse/MUSE-180?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12464820
]
Dan Jemiolo commented on MUSE-180:
----------------------------------
I think this highlights some overlap between the WSA spec and WSRF. For
whatever reason, the WSRF authors decided to include routing and addressing
faults in their spec, which is clearly the domain of WSA. Right now, Muse
throws a wsa:DestinationUnreachable fault, which has a description that is very
similar to the one above. Since the router is generic and does not prereq WSRF,
when it finds a resource is missing, it's only option is to send back the WSA
fault. We could debate about which is more proper, but our time would probably
be better spent making a workaround:
You can subclass SimpleResourceRouter and override getTargetResource() and make
it so that it throws an org.apache.muse.ws.resource.faults.ResourceUnknownFault
object instead. This class is found in the muse-wsrf-api JAR. You would then
replace the value of <java-router-class/> in muse.xml with the name of the new
class.
I will create this new class if you are willing to help test it. ;-) This
would also be a good time to make sure that all of the fields for the WSA
DestinationUnreachable fault are filled in properly.
> SimpleResourceRouter should throw a ResourceUnknownException when a unknown
> resource is requested
> -------------------------------------------------------------------------------------------------
>
> Key: MUSE-180
> URL: https://issues.apache.org/jira/browse/MUSE-180
> Project: Muse
> Issue Type: Bug
> Components: Core Engine - Routing and Serialization
> Affects Versions: 2.0.0 M1, 2.0.0 M2, 2.0.0, 2.1.0, 2.2.0
> Reporter: Oliver Waeldrich
> Assigned To: Dan Jemiolo
> Fix For: 2.2.0
>
>
> The SimpleResourceRouter implementation should throw a
> ResourceUnknownException when a unknown resource is requested. This is stated
> in the WS resource spec:
> wsrf-rw:ResourceUnknownFault
> The resource identified in the message is not known to the Web service. The
> fault may contain additional resource- or application-specific information in
> it.
> Currently in the method SimpleResourceRouter.getTargetResource() only a
> SoapFault is thrown. This makes it difficult for applications to properly
> handle BaseFaults. A patch would simply be:
> SimpleResourceRouter.getTargetResource()
> ...
> throw new
> ResourceUnknownFault(_MESSAGES.get("DestinationUnreachable", filler));
> //throw new SoapFault(_MESSAGES.get("DestinationUnreachable",
> filler));
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]