Bug 3614 - soap headers not in envelope & logging problems
: soap headers not in envelope & logging problems
Status: RESOLVED FIXED
: Java WS Core
globus_wsrf_core
: unspecified
: PC Windows XP
: P3 blocker
: ---
Assigned To:
:
:
:
:
  Show dependency treegraph
 
Reported: 2005-08-01 17:38 by
Modified: 2005-08-02 10:29 (History)


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2005-08-01 17:38:23
When an exception is rasied in a request handler, the addressig headers (or any 
other headers) are not added to the response message. The missing header causes 
the c clients to die with a deserialization error - see bug 2437. 

For example, when the user submits a job and the container replies with 'not in 
a gridmap file' fault the c client will die with the deserialization error. The 
user will not know what actual error occurred. Even if the user attepts to 
enable logging for MessageLoggingHandler the wrong message will be logged 
(that's another bug related to the missing headers problem). Therefore, the 
user (if using the c client) will have very hard time to figure out the actual 
error.

The bug 2437 is not easy to fix (not in 4.0.1 timeframe) so maybe the Java bits 
should be fixed instead.
------- Comment #1 From 2005-08-02 00:41:57 -------
I committed a fix to the MessageLoggingHandler to log the fault properly and 
another fix to AddressingHandler to include the WS-A headers in the fault 
message to trunk. That seems to fix globusrun-ws, for example:

Before:

localhost gawor/gt4.0.1> bin/globusrun-ws -submit -self-authz -job-
command /bin/sleep 10
Submitting job...Failed.
globusrun-ws: Error submitting job
globus_soap_message_module: Failed receiving response 
ManagedJobFactoryPortType_createManagedJob.
globus_soap_message_module: Deserialization of 
{http://schemas.xmlsoap.org/soap/envelope/}Header failed.

After:

localhost gawor/gt4.0.1> bin/globusrun-ws -submit -self-authz -job-
command /bin/sleep 10
Submitting job...Failed.
globusrun-ws: Error submitting job
globus_soap_message_module: SOAP Fault
Fault code: soapenv:Server.userException
Fault string: 
org.globus.wsrf.impl.security.authorization.exceptions.AuthorizationException: "
/DC=org/DC=doegrids/OU=People/CN=Jaroslaw Gawor 837111" is not authorized to 
use operation: {http://www.globus.org/namespaces/2004/10/gram/job}
createManagedJob on this service

------- Comment #2 From 2005-08-02 00:46:35 -------
Need to check with Lisa before committing to globus_4_0_branch as the fix to 
AddressingHandler changes on the wire bits. That is, before there was no soap 
header on faults, now they are, but should have been there in the first place.
------- Comment #3 From 2005-08-02 10:29:37 -------
I committed the fixes to globus_4_0_branch. 

One comment on the MessageLoggingHandler: In case of a fault, the 
MessageLoggingHandler will execute before the AddressingHandler. Therefore, the 
message logged will not contain the WS-A SOAP headers but the actual message 
sent on the wire will.