[jboss-user] [jBPM] - Re: Process Parameters through REST API?
Thomas Setiabudi
do-not-reply at jboss.com
Thu Aug 9 08:21:05 EDT 2012
Thomas Setiabudi [https://community.jboss.org/people/thomas.setiabudi] created the discussion
"Re: Process Parameters through REST API?"
To view the discussion, visit: https://community.jboss.org/message/752814#752814
--------------------------------------------------------------
Hi Franck,
Finally Made It! :)
so here is how to do it.
first, you have to render the form
something like this
responseString = requestGetService(
" http://localhost:8080/gwt-console-server/rs/form/process/ http://localhost:8080/gwt-console-server/rs/form/process/"
+ "com.sample.evaluation" + "/render", null, false);
if (responseString.contains("<html>")) {
responseString = authenticate(address, "krisv", "krisv");
responseString = requestGetService(
" http://localhost:8080/gwt-console-server/rs/form/process/ http://localhost:8080/gwt-console-server/rs/form/process/"
+ "com.sample.evaluation" + "/render", null, false);
}
ok. this will get you the input form
then call the form process complete like this
String address = " http://localhost:8080/gwt-console-server/rs/form/process/com.sample.evaluation/complete http://localhost:8080/gwt-console-server/rs/form/process/com.sample.evaluation/complete";
String responseString = "";
Map<String, Object> map = new HashMap<String, Object>();
map.put("employee", "thomas");
map.put("reason", "theReason");
responseString = requestPostMultipartService(address, map);
if (responseString.contains("<html>")) {
responseString = authenticate(address, "krisv", "krisv");
responseString = requestPostMultipartService(address, map);
}
the result should be:
<div style='font-family:sans-serif; padding:10px;'><h3>Successfully processed input</h3><p/>You can now close this window.</div>
:)
and for the functions that I use are:
private String requestPostMultipartService(String url,
Map<String, Object> parameters) {
String responseString = "";
try {
HttpPost httpPost = new HttpPost(url);
if (parameters == null)
parameters = new HashMap<String, Object>();
MultipartEntity entity = new MultipartEntity(
HttpMultipartMode.BROWSER_COMPATIBLE);
Set<String> keys = parameters.keySet();
for (Iterator<String> keysIterator = keys.iterator(); keysIterator
.hasNext();) {
String keyString = keysIterator.next();
String value = parameters.get(keyString).toString();
entity.addPart(keyString, new StringBody(value));
}
httpPost.setEntity(entity);
HttpResponse response = httpClient.execute(httpPost);
responseString = this.getRequestString(response);
} catch (Exception e) {
}
return responseString;
}
and
private String getRequestString(HttpResponse response) throws Exception {
InputStreamReader inputStreamReader = null;
BufferedReader bufferedReader = null;
String req = "";
InputStream inputStream = response.getEntity().getContent();
inputStreamReader = new InputStreamReader(inputStream);
bufferedReader = new BufferedReader(inputStreamReader);
StringBuilder stringBuilder = new StringBuilder();
String line = bufferedReader.readLine();
while (line != null) {
stringBuilder.append(line);
line = bufferedReader.readLine();
}
req = stringBuilder.toString();
return req;
}
just give it a try and let me know if it works for you :)
Regards,
Thomas Setiabudi
--------------------------------------------------------------
Reply to this message by going to Community
[https://community.jboss.org/message/752814#752814]
Start a new discussion in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2034]
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-user/attachments/20120809/6a0790b4/attachment.html
More information about the jboss-user
mailing list