Hi all,

Has anyone ran into this exception? I could manage :) to get it with
following steps:

- Used EchoBlockingDualClient sample. Didn't change client code.
- Changed message receiver of MyService to RawXMLINOnlyMessageReceiver
- Changed MyService.java as following:

----------------------------------------------------------------------
public class MyService {

  private MessageContext inMsgCtx;

  public void setOperationContext(OperationContext opctx) 
           throws AxisFault {
    inMsgCtx = 
      opctx.getMessageContext(WSDLConstants.MESSAGE_LABEL_IN_VALUE);
  }

  public void echo (OMElement incomingPayload)                         
      
        throws XMLStreamException {
    incomingPayload.build();
    incomingPayload.detach();           

    OMElement outgoingPayload = incomingPayload;

    oldOptions = inMsgCtx.getOptions();
    String messageID = inMsgCtx.getMessageID();
    EndpointReference targetEPR = oldOptions.getReplyTo();
    String action = oldOptions.getAction();
    sendResult(messageID, targetEPR, action, outgoingPayload);
  }

  public void sendResult(String messageId, EndpointReference targetEPR,
        String action, OMElement payload) {
    ServiceClient sender = null;
    try {
      Options options = new Options();
      options.setTo(targetEPR);
      options.setTransportInProtocol(Constants.TRANSPORT_HTTP);
      options.setUseSeparateListener(false);
      options.setAction(action);
      options.setMessageId(UUIDGenerator.getUUID());
      options.setRelationships(new RelatesTo[] { 
          new RelatesTo(messageId,
              AddressingConstants.Submission.                        
              WSA_RELATES_TO_RELATIONSHIP_TYPE_DEFAULT_VALUE)});

      ConfigurationContext confCtx = 
          ListenerManager.defaultConfigurationContext;
      sender = new ServiceClient(confCtx, null);
      sender.setOptions(options);

      // Blocking Invocation
      sender.sendReceive(payload);
    } catch (AxisFault axisFault) {
      axisFault.printStackTrace();
    } catch (Exception ex) {
      ex.printStackTrace();
    } finally {
      try {
          sender.finalizeInvoke();
      } catch (AxisFault axisFault) {
          // have to ignore this
          axisFault.printStackTrace();
      }
    }
  }
}
----------------------------------------------------------------------

When I pass "true" to setUseSeparateListener(), there is no problem.
Otherwise I get following exception:

----------------------------------------------------------------------
[DEBUG][2006-05-13 23:15:08,046] org.apache.axis2.engine.Phase -
Checking post-conditions for phase "MessageOut"
postMethod.getStatusCode(): 200
contentEncoding: null
org.apache.axis2.AxisFault: com.ctc.wstx.exc.WstxEOFException:
Unexpected EOF in prolog
 at [row,col {unknown-source}]: [1,0]; nested exception is: 
        org.apache.axiom.om.OMException: com.ctc.wstx.exc.WstxEOFException:
Unexpected EOF in prolog
 at [row,col {unknown-source}]: [1,0]
        at
org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:126)
        at
org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:67)
        at
org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:349)
        at
org.apache.axis2.description.OutInAxisOperationClient.execute(OutInAxisOperation.java:279)
        at
org.apache.axis2.client.ServiceClient.sendReceive(ServiceClient.java:513)
...
----------------------------------------------------------------------

Is it normal behavior due to a missing point in my code, or is it a
bug?

Any help would be appreciated.

Regards,

Ali Sadik Kumlali

__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 

Reply via email to