Я пытаюсь найти контакт из netsuite. что я в основном делаю, создавая критерии поиска с параметром электронной почты в качестве параметра и пытаясь получить результат, а затем сопоставить его объекту с трансформатором xml. Но я получаю следующее сообщение об ошибке, как:Ошибка при получении результата поиска netsuite
не могли бы назвать java.util.concurrent.CopyOnWriteArrayList.writeObject(): Не удается мобилизовывать экземпляр XStream в действии
мул поток Я использую следующим образом:
<flow name="contact_searchFlow">
<http:listener config-ref="HTTP_Request_Configuration" path="/basicContactSearch" doc:name="HTTP"/>
<logger message="Test1" level="INFO" doc:name="Logger"/>
<component class="netsuitews.ContactBasicSearchComponent" doc:name="Search Contact Basic criteria"/>
<logger message="Test 2" level="INFO" doc:name="Logger"/>
<netsuite:search config-ref="NetSuite__Request_Level_Authentication" searchRecord="CONTACT_BASIC" fetchSize="5" doc:name="Contact Basic Search"/>
<logger message="Test3" level="INFO" doc:name="Logger"/>
<mulexml:object-to-xml-transformer doc:name="Object to XML"/>
<logger message="Test4" level="INFO" doc:name="Logger"/>
компонент поиска я использую следующим образом:
public class ContactBasicSearchComponent implements Callable {
public Object onCall(MuleEventContext eventContext) throws Exception {
ContactSearchBasic searchCriteria = new ContactSearchBasic();
SearchStringField nameFilter = new SearchStringField();
nameFilter.setOperator(SearchStringFieldOperator.IS);
nameFilter.setSearchValue("[email protected]");
searchCriteria.setEmail(nameFilter);
return searchCriteria;
}
@Override
public Object call() throws Exception {
// TODO Auto-generated method stub
return null;
}
}
Я использую NetSuite Connector (Mule 3.5+) версия 7.1.0.201603151241 и работает в мул 3.8.0 EE версии.
Вот трассировка стека, которую я получил из журналов мула.
2016-08-18 20:41:26,181 [netsuitews].HTTP_Request_Configuration.worker.01] INFO org.mule.api.processor.LoggerMessageProcessor - Test1
2016-08-18 20:41:26,194 [[netsuitews].HTTP_Request_Configuration.worker.01] INFO org.mule.api.processor.LoggerMessageProcessor - Test 2
2016-08-18 20:41:37,668 [[netsuitews].HTTP_Request_Configuration.worker.01] INFO org.mule.api.processor.LoggerMessageProcessor - Test3
2016-08-18 20:41:43,761 [[netsuitews].HTTP_Request_Configuration.worker.01] ERROR org.mule.exception.DefaultMessagingExceptionStrategy -
********************************************************************************
Message : Could not call java.util.concurrent.CopyOnWriteArrayList.writeObject() : Cannot marshal the XStream instance in action
-------------------------------
message : Could not call java.util.concurrent.CopyOnWriteArrayList.writeObject()
cause-exception : com.thoughtworks.xstream.converters.ConversionException
cause-message : Cannot marshal the XStream instance in action
(com.thoughtworks.xstream.converters.ConversionException).
Payload : [email protected]
Element XML : <mulexml:object-to-xml-transformer doc:name="Object to XML"></mulexml:object-to-xml-transformer>
Payload Type : org.mule.streaming.ConsumerIterator
Element : /contact_searchFlow/processors/5 @ netsuitews:customer_crud.xml:61 (Object to XML)
Root Exception stack trace:
com.thoughtworks.xstream.converters.ConversionException: Cannot marshal the XStream instance in action
at com.thoughtworks.xstream.core.util.SelfStreamingInstanceChecker.marshal(SelfStreamingInstanceChecker.java:59)
at com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:69)
at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:58)
at com.thoughtworks.xstream.core.AbstractReferenceMarshaller$1.convertAnother(AbstractReferenceMarshaller.java:84)
at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.marshallField(AbstractReflectionConverter.java:250)
at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter$2.writeField(AbstractReflectionConverter.java:226)
at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter$2.<init>(AbstractReflectionConverter.java:189)
at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doMarshal(AbstractReflectionConverter.java:135)
at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.marshal(AbstractReflectionConverter.java:83)
at com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:69)
at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:58)
at com.thoughtworks.xstream.core.AbstractReferenceMarshaller$1.convertAnother(AbstractReferenceMarshaller.java:84)
at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.marshallField(AbstractReflectionConverter.java:250)
at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter$2.writeField(AbstractReflectionConverter.java:226)
at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter$2.<init>(AbstractReflectionConverter.java:189)
at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doMarshal(AbstractReflectionConverter.java:135)
at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.marshal(AbstractReflectionConverter.java:83)
at com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:69)
at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:58)
at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:43)
at com.thoughtworks.xstream.core.AbstractReferenceMarshaller$1.convertAnother(AbstractReferenceMarshaller.java:88)
at
.
.
.
Не могли бы вы помочь в этом!
Спасибо. Вы правы @CountD. Отлично работает. – Raj