We are currently having a problem with the task creation method through the Java soap API (v 3.5).
1.It is working while using the basic creation method (4 parameters) followed by the update method to set the remaining parameters:
- Code: Select all
java.lang.String createTask(java.lang.String sessionId,java.lang.String parentTaskId,java.lang.String categoryId,java.lang.String name)
void updateTask(java.lang.String sessionId,java.lang.String taskId,java.lang.String shortName,java.lang.String name, java.lang.String description, double budget,long deadline,java.lang.String priorityId,java.lang.String parentTaskId,
java.lang.String handlerUserId,java.lang.String handlerGroupId, boolean sendMail, java.lang.String[] udfNames,java.lang.String[] udfValues)
throws java.rmi.RemoteException
2. It is failing using the full parameter method with the appropriate parameters (apparently ):
- Code: Select all
java.lang.String createTask(java.lang.String sessionId,java.lang.String categoryId,java.lang.String shortname,java.lang.String name, java.lang.String description,
double budget,long deadline,java.lang.String priorityId,java.lang.String parentId,
java.lang.String handlerUserId,java.lang.String handlerGroupId,java.lang.String[] udfNames,java.lang.String[] udfValues)
//Code
- Code: Select all
public void create(String uTSSubmitterUserId, String uObjet, String uIntitule, String uTSDescription, String uCategid, String uParentTask){
try {
String uHandlerUserId = "1";//root
System.out.println( "create uTSSubmitterUserId="+uTSSubmitterUserId+ " uObjet="+uObjet+" uIntitule="+uIntitule
+" uTSDescription="+uTSDescription + " uCategid="+uCategid +" uParentTask="+uParentTask);
// 2 STEP CREATION : CREATION FOLLOWED BY UPDATE => OK : the task is created and then updated
String taskId = dp.getTaskService().createTask(sessionId, uParentTask, uCategid,uIntitule);
dp.getTaskService().updateTask(sessionId, taskId,uObjet, uIntitule,uTSDescription, 0, -1, null, uParentTask, uHandlerUserId, null, false, null, null);
System.out.println( "CREATION FOLLOWED BY UPDATE SUCCESSFULL taskId="+ taskId);
// ONE STEP CREATION : FAILS : see exception trace below
taskId = dp.getTaskService().createTask(sessionId, uCategid , "NEW"+uObjet, "NEW"+uIntitule, "NEW"+uTSDescription, 0,-1, null, uParentTask , uHandlerUserId, null, null, null) ;
System.out.println( "ONE STEP CREATION SUCCESSFULL taskId="+ taskId);
} catch (RemoteException e) {
e.printStackTrace();
}catch (Exception e) {
e.printStackTrace();
}
}
//Exception trace
- Code: Select all
create uTSSubmitterUserId=8a8186843c50dbc1013c8a658fd821ee uObjet=MATERIEL uIntitule=CAPS: porte uTSDescription=Description de la demande uCategid=8a8186843ccc5703013d0f64ee0b2897 uParentTask=8a8186843ccc5703013d0f4489332072
CREATION FOLLOWED BY UPDATE SUCCESSFULL taskId=8a818f853dadcad6013e1a959dc63a06
AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
faultSubcode:
faultString: org.xml.sax.SAXException: Bad types (double -> class java.lang.String)
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}stackTrace:org.xml.sax.SAXException: Bad types (double -> class java.lang.String)
at org.apache.axis.message.RPCHandler.onStartChild(RPCHandler.java:286)
at org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1035)
at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:165)
at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:1141)
at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:236)
at org.apache.axis.message.RPCElement.getParams(RPCElement.java:384)
at org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:81)
at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:323)
at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:453)
at org.apache.axis.server.AxisServer.invoke(AxisServer.java:281)
at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:699)
at com.trackstudio.soap.TSAxisServlet.doPost(TSAxisServlet.java:19)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at jcifs.http.NtlmHttpFilter.doFilter(NtlmHttpFilter.java:130)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.josso.tc60.agent.SSOAgentValve.invoke(SSOAgentValve.java:359)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.ajp.AjpAprProcessor.process(AjpAprProcessor.java:419)
at org.apache.coyote.ajp.AjpAprProtocol$AjpConnectionHandler.process(AjpAprProtocol.java:378)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1509)
at java.lang.Thread.run(Thread.java:662)
Regards.