Bug 5845 - FaultHelper issue
: FaultHelper issue
Status: RESOLVED FIXED
: Java WS Core
globus_wsrf_core
: unspecified
: PC Windows XP
: P1 blocker
: 4.2.0
Assigned To:
:
:
:
:
  Show dependency treegraph
 
Reported: 2008-02-05 17:12 by
Modified: 2008-04-02 09:33 (History)


Attachments


Note

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


Description From 2008-02-05 17:12:58
Martin reports the following in FaultHelper code:

2008-02-01T15:01:15.697-06:00 ERROR utils.FaultUtils
[pool-1-thread-8,makeFault:549] problem instantiating fault of type
org.globus.exec.generated.StagingFaultType. 
java.lang.ClassCastException: org.apache.xerces.dom.DeferredElementNSImpl
    at org.globus.wsrf.utils.FaultHelper.addFaultCause(FaultHelper.java:227)
    at
org.globus.wsrf.utils.FaultHelper.addStackTraceFault(FaultHelper.java:253)
    at org.globus.wsrf.utils.FaultHelper.toBaseFault(FaultHelper.java:303)
    at org.globus.wsrf.utils.FaultHelper.addFaultCause(FaultHelper.java:216)
    at org.globus.exec.utils.FaultUtils.makeFault(FaultUtils.java:537)
    at org.globus.exec.utils.FaultUtils.createStagingFault(FaultUtils.java:356)
    at
org.globus.exec.service.exec.processing.handler.StagingHandler.processCompletedStagingJob(StagingHandler.java:90)
    at
org.globus.exec.service.exec.processing.handler.StageInResponseStateHandler.process(StageInResponseStateHandler.java:62)
    at
org.globus.exec.service.exec.processing.StateMachine.processState(StateMachine.java:326)
    at
org.globus.exec.service.exec.processing.StateProcessingTask.run(StateProcessingTask.java:76)
    at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
    at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
    at java.lang.Thread.run(Thread.java:595)
------- Comment #1 From 2008-03-25 14:54:44 -------
Blocks GRAM for 4.2
------- Comment #2 From 2008-03-25 15:23:04 -------
I think the assumption that the following cast will work is not ok.

// FIXME type cast
BaseFaultType oldCause = (BaseFaultType)cause;

I had problems in ws-gram with that in job submissions with staging,
when the transfer failed in RFT.
------- Comment #3 From 2008-03-26 14:30:10 -------
Updated the FaultHelper to evaluate non-BaseFaultTypes as the original fault.
This eliminates the ClassCastException and is the best we can do with out a
Basefault to work with.  In the particular case here, the DeferredElementNSImpl
is equivelent to a null, so we treat it as such.