Hi,
I need to inject a message to a esb sequence, I already wrote a java code
to implement that. When I created a sequence to send message to an
endpoint, the console indicates the following error. But when I tried to
inject the message to a sequence with log mediator, it works fine.
[2015-01-12 09:37:26,679] ERROR - Axis2SynapseEnvironment Unexpected error
>> executing task/async inject
>
> java.lang.IllegalStateException: not initialized, endpoint must be in
>> initialized state
>
> at
>> org.apache.synapse.endpoints.AbstractEndpoint.readyToSend(AbstractEndpoint.java:244)
>
> at
>> org.apache.synapse.endpoints.AddressEndpoint.send(AddressEndpoint.java:54)
>
> at
>> org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:97)
>
> at
>> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:80)
>
> at
>> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:47)
>
> at
>> org.apache.synapse.mediators.filters.InMediator.mediate(InMediator.java:61)
>
> at
>> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:80)
>
> at
>> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:47)
>
> at
>> org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:135)
>
> at
>> org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectInbound(Axis2SynapseEnvironment.java:324)
>
> at
>> org.wso2.carbon.inbound.endpoint.protocol.mqtt.MQTTInjectHandler.invoke(MQTTInjectHandler.java:94)
>
> at
>> org.wso2.carbon.inbound.endpoint.protocol.mqtt.MqttListenerCallback.messageArrived(MqttListenerCallback.java:30)
>
> at
>> org.eclipse.paho.client.mqttv3.internal.CommsCallback.handleMessage(CommsCallback.java:332)
>
> at
>> org.eclipse.paho.client.mqttv3.internal.CommsCallback.run(CommsCallback.java:144)
>
> at java.lang.Thread.run(Thread.java:745)
>
> [2015-01-12 09:37:26,683] WARN - Axis2SynapseEnvironment Executing fault
>> handler due to exception encountered
>
> [2015-01-12 09:37:26,683] WARN - FaultHandler ERROR_CODE : 0
>
> [2015-01-12 09:37:26,683] WARN - FaultHandler ERROR_MESSAGE : not
>> initialized, endpoint must be in initialized state
>
> [2015-01-12 09:37:26,684] WARN - FaultHandler ERROR_DETAIL :
>> java.lang.IllegalStateException: not initialized, endpoint must be in
>> initialized state
>
> at
>> org.apache.synapse.endpoints.AbstractEndpoint.readyToSend(AbstractEndpoint.java:244)
>
> at
>> org.apache.synapse.endpoints.AddressEndpoint.send(AddressEndpoint.java:54)
>
> at
>> org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:97)
>
> at
>> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:80)
>
> at
>> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:47)
>
> at
>> org.apache.synapse.mediators.filters.InMediator.mediate(InMediator.java:61)
>
> at
>> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:80)
>
> at
>> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:47)
>
> at
>> org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:135)
>
> at
>> org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectInbound(Axis2SynapseEnvironment.java:324)
>
> at
>> org.wso2.carbon.inbound.endpoint.protocol.mqtt.MQTTInjectHandler.invoke(MQTTInjectHandler.java:94)
>
> at
>> org.wso2.carbon.inbound.endpoint.protocol.mqtt.MqttListenerCallback.messageArrived(MqttListenerCallback.java:30)
>
> at
>> org.eclipse.paho.client.mqttv3.internal.CommsCallback.handleMessage(CommsCallback.java:332)
>
> at
>> org.eclipse.paho.client.mqttv3.internal.CommsCallback.run(CommsCallback.java:144)
>
> at java.lang.Thread.run(Thread.java:745)
>
>
>> [2015-01-12 09:37:26,684] WARN - FaultHandler ERROR_EXCEPTION :
>> java.lang.IllegalStateException: not initialized, endpoint must be in
>> initialized state
>
>
>
The java code attached below is the code that I implemented to inject the
message into the sequence.
> *OMElement documentElement = null;*
> * InputStream in = new AutoCloseInputStream(new
> ByteArrayInputStream(*
> * message.getBytes()));**
> documentElement = builder.processDocument(in, contentType, axis2MsgCtx);*
>
> * // Inject the message to the sequence.*
> *
> msgCtx.setEnvelope(TransportUtils.createSOAPEnvelope(documentElement));*
> * if (injectingSeq == null || injectingSeq.equals("")) {*
> * log.error("Sequence name not specified. Sequence : " +
> injectingSeq);*
> * return false;*
> * }*
> * SequenceMediator seq = (SequenceMediator)
> synapseEnvironment.getSynapseConfiguration()*
> * .getSequence(injectingSeq);*
> * seq.setErrorHandler(onErrorSeq);*
> * if (seq != null) {*
> * if (log.isDebugEnabled()) {*
> * log.debug("injecting message to sequence : " +
> injectingSeq);*
> * }*
> * if(!synapseEnvironment.injectInbound(msgCtx, seq,
> sequential)){*
> * return false;*
> * }*
> * } else {*
> * log.error("Sequence: " + injectingSeq + " not found");**
> }*
Is there are any way to fix this error?
Thank You
--
*Chanaka Sampath Cooray*
Software Engineering Intern,
WSO2 Lanka (pvt) Ltd.
Mobile:+94713614884
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev