• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Liutauras Vilda
  • Jeanne Boyarsky
  • Devaka Cooray
  • Paul Clapham
Sheriffs:
  • Tim Cooke
  • Knute Snortum
  • Bear Bibeault
Saloon Keepers:
  • Ron McLeod
  • Tim Moores
  • Stephan van Hulst
  • Piet Souris
  • Ganesh Patekar
Bartenders:
  • Frits Walraven
  • Carey Brown
  • Tim Holloway

"Bad types" error from BPEL invoke

 
Greenhorn
Posts: 4
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I made a simple bpel procedure based on web service.
when I finished the bpel procedure, I release the bpel process on the tomcat.then I start tomcat engine, use the bpel address while give the operation name and parameters & values, the screen show the right result.
But when I use another method to invoke the bpel procedure ,there exist an error, I do not how to do with .
client invoke src code is as below:
import java.io.*;
import java.net.*;
import java.util.*;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import javax.xml.namespace.QName;
import org.apache.axis.server.AxisServer;
import org.apache.axis.MessageContext;
import org.apache.axis.description.OperationDesc;
import org.apache.axis.Message;
import org.apache.axis.encoding.XMLType;
import org.xml.sax.*;
import javax.xml.rpc.ParameterMode;

public class Customer

{
public static void main(String[] args) throws Exception
{
boolean tt=true;
String endpoint = "http://10.10.136.124:8080/active-bpel/services/projectmanageService";
String operationName = "projectmanage";
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(new java.net.URL(endpoint));
call.setOperationName(operationName);
call.addParameter( "invoke", XMLType.XSD_BOOLEAN, ParameterMode.IN );
call.invoke( new Object[] {new Boolean(tt)} );
}
}
the error exist is:
org.xml.sax.SAXException: Bad types (class java.lang.String -> class java.math.B:igInteger),

do you have the same question as me? If you have solved this problem ,please tell me the answer.thank you.
 
Rancher
Posts: 43009
76
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Are you sure that the error is caused by the client code? No String or BigInteger is sent by it, so it seems more likely that is is caused by another call which the BPEL process makes in turn.

You could use a tool like TCPMon to observe the SOAP that is sent over the wire, just to make that the calls generated are OK.
 
nj toto
Greenhorn
Posts: 4
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I think there exist error in the client invoke code,because if I use another method ,the screen will show the true result.The another method is through entering the bpel procedure address at the IE url.The bpel procedure address is "http://10.10.136.124:8080/active-bpel/services/projectmanageService?method=projectmanage&invoke=true".
I think my code is not some error,so I do not use the tcpmonitor to watch the soap request.Tonight I will use tcpmonitor to watch the detail soap request to see if there are some strange.
 
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!