You are viewing a plain text version of this content. The canonical link for it is here.
Posted to muse-user@ws.apache.org by "Vinh Nguyen (vinguye2)" <vi...@cisco.com> on 2007/02/02 04:22:09 UTC

Destroy operation

To support the Destroy operation, do we need to implement our own
capability?

My wsdl defines:
xmlns:wsrf-rl-w="http://docs.oasis-open.org/wsrf/rlw-2"
...
<wsdl:operation name="Destroy">
    <wsdl:input name="DestroyRequest" message="wsrf-rl-w:DestroyRequest"
wsa:Action="http://docs.oasis
open.org/wsrf/rl-2/Destroy/DestroyRequest"/>
    <wsdl:output name="DestroyResponse"
message="wsrf-rl-w:DestroyResponse"
wsa:Action="http://docs.oasis-open.org/wsrf/rl-2/Destroy/DestroyResponse
"/>
    <wsdl:fault name="ResourceNotDestroyedFault"
message="wsrf-rl-w:ResourceNotDestroyedFault"/>
    <wsdl:fault name="ResourceUnknownFault"
message="tns:ResourceUnknownFault"/>
    <wsdl:fault name="ResourceUnavailableFault"
message="tns:ResourceUnavailableFault"/>
</wsdl:operation>

Using wsdl2java, my muse.xml defines:
<desc:capability xmlns:desc="http://ws.apache.org/muse/descriptor">
 
<desc:capability-uri>http://docs.oasis-open.org/wsrf/rlw-2/ImmediateReso
urceTermination</desc:capability-uri>
 
<desc:java-capability-class>org.apache.muse.ws.resource.lifetime.impl.Si
mpleImmediateTermination</desc:java-capability-class>
</desc:capability>
 
And my service.xml defines:
<actionMapping>http://docs.oasis-open.org/wsrf/rlw-2/ImmediateResourceTe
rmination/DestroyRequest</actionMapping>
 
Using the generated proxy class, I calling destroy() but get the
following error:
 
org.apache.muse.ws.addressing.soap.SoapFault: [ID =
'ActionNotSupported'] The resource at 'NamedQuery' does not expose an
operation with the WS-Action
'http://docs.oasis-open.org/wsrf/rlw-2/ImmediateResourceTermination/Dest
royRequest' through any of its capabilities.
 at
org.apache.muse.core.AbstractResourceClient.invoke(AbstractResourceClien
t.java:279)
 at
org.apache.muse.core.AbstractResourceClient.invoke(AbstractResourceClien
t.java:235)
 at
org.apache.muse.ws.resource.remote.WsResourceClient.destroy(WsResourceCl
ient.java:105)
 
If I recall correctly, the outcome of one of the group's previous
discussions was that to destroy a resource, just call the
proxy.destroy() method.

---------------------------------------------------------------------
To unsubscribe, e-mail: muse-user-unsubscribe@ws.apache.org
For additional commands, e-mail: muse-user-help@ws.apache.org