You are viewing a plain text version of this content. The canonical link for it is here.
Posted to muse-dev@ws.apache.org by "Dan Jemiolo (JIRA)" <ji...@apache.org> on 2006/07/10 21:29:30 UTC

[jira] Created: (MUSE-39) Provide optional flag in descriptor that prevents runtime exception if WSDL and Java interfaces are not completely in synch

Provide optional flag in descriptor that prevents runtime exception if WSDL and Java interfaces are not completely in synch
---------------------------------------------------------------------------------------------------------------------------

         Key: MUSE-39
         URL: http://issues.apache.org/jira/browse/MUSE-39
     Project: Muse
        Type: Improvement

 Environment: Axis2 and OSGi
    Reporter: Dan Jemiolo
    Priority: Minor


Right now Muse is using the WSDL to validate the public interface against the internal code, and throws a runtime exception if it discovers that not all the operations in the WSDL are covered by the Java interface. Similarly, an operation must be in the WSDL to be called remotely (this is a security measure, and also prevents name clashes). The code that does the first check is in SimpleResourceDescriptor, while the second check is in SimpleResource; both could be overridden to stop this behavior in the case where a user wants Muse to be more "free form" when acting as an interface to an IT resource.

A better idea, however, might be to add a flag (default value "true") that tells Muse whether it should enforce the binding between WSDL and Java capability code. I want the default to be true to encourage use of the standard programming model, but providing a flag that will turn the exception into a simple log message would not be hard and makes Muse flexible when necessary. The second issue, however, should probably be handled by a user extending or replacing SimpleResource such that hasOperation always returns true (or uses some other logic test) and invoke( ) does whatever is necessary to validate the operation being requested.


-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


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


[jira] Commented: (MUSE-39) Provide optional flag in descriptor that prevents runtime exception if WSDL and Java interfaces are not completely in synch

Posted by "Dan Jemiolo (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/MUSE-39?page=comments#action_12420193 ] 

Dan Jemiolo commented on MUSE-39:
---------------------------------

The original description of the issue is not accurate. It addresses the issue of having operations in the WSDL that have no Java equivalent (via capabilities); the situation we are trying to solve is actually the opposite - the WSDL may be generated on the fly, and the WSDL doc available at initialization time may be empty or not existent, so there will be no operations lacking Java implementations. This will allow users whose resource interfaces are very large (or whose number of resource types is very large) to avoid creating the WSDL files and rely on runtime checking to verify requests.

Muse does not need a flag to shut off the check for WSDL operations backed by Java methods. Users who encounter the above use case should simply extend SimpleResource (or SimpleWsResource) and take the following steps:

1. Override hasOperation( ) to either always return "true" or to perform whatever special logic/API call is needed to determine if the operation is valid.

2. Override invoke( ) to use whatever logic/API is needed to make the operation invocation w/o the use of capabilities.

This solution seems ideal because in both cases, the user may rely on super.hasOperation or super.invoke to get the default behavior if only some operations require special handling.



> Provide optional flag in descriptor that prevents runtime exception if WSDL and Java interfaces are not completely in synch
> ---------------------------------------------------------------------------------------------------------------------------
>
>          Key: MUSE-39
>          URL: http://issues.apache.org/jira/browse/MUSE-39
>      Project: Muse
>         Type: Improvement

>  Environment: Axis2 and OSGi
>     Reporter: Dan Jemiolo
>     Priority: Minor

>
> Right now Muse is using the WSDL to validate the public interface against the internal code, and throws a runtime exception if it discovers that not all the operations in the WSDL are covered by the Java interface. Similarly, an operation must be in the WSDL to be called remotely (this is a security measure, and also prevents name clashes). The code that does the first check is in SimpleResourceDescriptor, while the second check is in SimpleResource; both could be overridden to stop this behavior in the case where a user wants Muse to be more "free form" when acting as an interface to an IT resource.
> A better idea, however, might be to add a flag (default value "true") that tells Muse whether it should enforce the binding between WSDL and Java capability code. I want the default to be true to encourage use of the standard programming model, but providing a flag that will turn the exception into a simple log message would not be hard and makes Muse flexible when necessary. The second issue, however, should probably be handled by a user extending or replacing SimpleResource such that hasOperation always returns true (or uses some other logic test) and invoke( ) does whatever is necessary to validate the operation being requested.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


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


[jira] Closed: (MUSE-39) Provide optional flag in descriptor that prevents runtime exception if WSDL and Java interfaces are not completely in synch

Posted by "Dan Jemiolo (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/MUSE-39?page=all ]

Dan Jemiolo closed MUSE-39.
---------------------------

    Fix Version/s: 2.0.0 M2
       Resolution: Fixed
         Assignee: Dan Jemiolo

> Provide optional flag in descriptor that prevents runtime exception if WSDL and Java interfaces are not completely in synch
> ---------------------------------------------------------------------------------------------------------------------------
>
>                 Key: MUSE-39
>                 URL: http://issues.apache.org/jira/browse/MUSE-39
>             Project: Muse
>          Issue Type: Improvement
>         Environment: Axis2 and OSGi
>            Reporter: Dan Jemiolo
>         Assigned To: Dan Jemiolo
>            Priority: Minor
>             Fix For: 2.0.0 M2
>
>
> Right now Muse is using the WSDL to validate the public interface against the internal code, and throws a runtime exception if it discovers that not all the operations in the WSDL are covered by the Java interface. Similarly, an operation must be in the WSDL to be called remotely (this is a security measure, and also prevents name clashes). The code that does the first check is in SimpleResourceDescriptor, while the second check is in SimpleResource; both could be overridden to stop this behavior in the case where a user wants Muse to be more "free form" when acting as an interface to an IT resource.
> A better idea, however, might be to add a flag (default value "true") that tells Muse whether it should enforce the binding between WSDL and Java capability code. I want the default to be true to encourage use of the standard programming model, but providing a flag that will turn the exception into a simple log message would not be hard and makes Muse flexible when necessary. The second issue, however, should probably be handled by a user extending or replacing SimpleResource such that hasOperation always returns true (or uses some other logic test) and invoke( ) does whatever is necessary to validate the operation being requested.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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