Author |
Message
|
sanathkumar |
Posted: Wed Sep 14, 2005 10:58 am Post subject: workitem id check-in problem through custome handlers |
|
|
Apprentice
Joined: 01 Jul 2003 Posts: 27
|
Hi
We are using customised handlers for using transfer and checkout the workitem and doing the checking-in through the webclient built in handler.we are utilizing the webclient functionality by adding more custome commands.One of our custom handler is when the user clicks on the workitem need to do the transfer and checkout and displaying the JSP to work on it.
When we got workitem from MQWorkflow and got checked out, after working on the JSP when we try to check-in we are getting... FMC00122E Object is empty error. I tested workitem id on workflow it contains the % chars in id. whenever we have this kind of workitem id s we are getting same error.
As we can not put id in request object to check-in workitem if there is % chars.
Is there any way to do it?. How can I get rid of not getting id s with % special chars in MQ Workflow.
Appreciate your immediate help.
Thanks,
sanath |
|
Back to top |
|
 |
MQRR |
Posted: Wed Sep 14, 2005 11:50 am Post subject: |
|
|
Centurion
Joined: 10 Aug 2003 Posts: 110
|
|
Back to top |
|
 |
sanathkumar |
Posted: Wed Sep 14, 2005 2:48 pm Post subject: |
|
|
Apprentice
Joined: 01 Jul 2003 Posts: 27
|
|
Back to top |
|
 |
sanathkumar |
Posted: Mon Oct 10, 2005 1:45 pm Post subject: |
|
|
Apprentice
Joined: 01 Jul 2003 Posts: 27
|
Hi MQRR
I have gone through the links u provided to me. I verified in all custom classes that using workitem id is encoded using URLEncoder.encode. We are passsing that work item id in request object from the JSP to builtin handler to checkIn the workitem.
We are using WMQWFv3.5 , WMQv5.3 and WAS v5.1.1 on Windows 2000 SP4 Server.
We are getting same "FMC00122E Object is empty". It is production issue, appreciate ur immediate help.
Cheers,
sanath |
|
Back to top |
|
 |
fidelio |
Posted: Mon Oct 10, 2005 3:26 pm Post subject: |
|
|
Apprentice
Joined: 14 Sep 2005 Posts: 45 Location: AttainBPM
|
Am I reading your post correctly in that when you try and check in an item via a customized web client sometimes the workitem id has '%' characters as part of the persistant objectID and the API doesn't like that? Are you sure that the WF OID has a "%" in it when you check it out? I ask because I don't think that character is used by WF in id's. How are you getting the ID? Sometime the browser will encode special characters, I know the ID might contain '\' (%5C) or '=' (%3D). |
|
Back to top |
|
 |
hos |
Posted: Tue Oct 11, 2005 12:03 am Post subject: |
|
|
Chevalier
Joined: 03 Feb 2002 Posts: 470
|
Hi,
to my knowledge there is one way to create a 122E error with the classic Java API: you use an OID of object type 'X' to create an object of type 'Y'.
For instance: use an activity OID to call persistentWorkitem(). |
|
Back to top |
|
 |
sanathkumar |
Posted: Tue Oct 11, 2005 6:27 am Post subject: |
|
|
Apprentice
Joined: 01 Jul 2003 Posts: 27
|
Hi
we are giving the custom view to the user in the JSP. When he click the activity name link then behind the scenes we are passing URL like below
String sURL = "Main?command=transferCheckOut&id=" + URLEncoder.encode(wfItem.getItemId())+"&issueKey="+issueKey+i;
<a href='javascript:openWindow("<%=sURL%>", "_new<%=i%>")'> <%=wfItem.getIssueId()%> </a>
Once the user clicks the link and we are calling custom command handler method to transfer and checked out the workitem. we got one workitem contains the "\" special char in that workitem ID. When we do the transfer and checkout it is working fine.
After user gets custome JSP to finish is work and we are passing the OID as Hidden varible in HTTP Request to the custom command handlerwhere it will use request, response to check-in the workitem. see the below code.
BuiltinHandler bh = sc.getBuiltinHandler();
RequestContext rc = bh.checkInWorkItem(request, response);
return bh.render("checkInItem", rc); when, we do the checkInItem then we are getting that error "FMC00122E Object is empty error".
I am not getting this error when I am doing the trasfer and check-out the workitem (with same OID contains /). Failing in check-in workitem.
Before check-in workitem we are using sendRedirect of HTTP response in the following way.will that make any difference?.
response.sendRedirect(
"../servlet/ShowSubFeatures?FEATURE_NAME=4D&AppID=Issues&TGT_SERVLET=servlet/Servlet4D8D&IssueID=" + issueId + "&refreshIssue=Y" +
"&status4d=" + dValue + "&sameuser=" +
sameUser + "&workitem="+URLEncoder.encode(workItemId)+"&issueKey="+issueKey);
Appreciate ur help.
cheers,
sanath |
|
Back to top |
|
 |
fidelio |
Posted: Tue Oct 11, 2005 7:09 am Post subject: |
|
|
Apprentice
Joined: 14 Sep 2005 Posts: 45 Location: AttainBPM
|
Is the workItemId variable passed through all of your code or do you use an API call to get it again? According to Volker's post it sounds like you might be using an ActivityInstanceID for the check-in instead of the WorkItemID or the id is in some other way corrupted between check-out and check-in. |
|
Back to top |
|
 |
sanathkumar |
Posted: Fri Oct 14, 2005 6:20 am Post subject: |
|
|
Apprentice
Joined: 01 Jul 2003 Posts: 27
|
Hi
Is the workItemId variable passed through all of your code or do you use an API call to get it again?[/quote]
Yes, we are passing "workItemId" all the way to my JSP's from the Servlet. In the JSP we keep that id as hidden varible in HTTP Request.In the JSP we will call command handler and using BuiltInHandler we will check-in the workitem.
Still having problem with that.
Appreciate ur help.
Cheers,
sanath |
|
Back to top |
|
 |
fidelio |
Posted: Mon Oct 17, 2005 8:16 am Post subject: |
|
|
Apprentice
Joined: 14 Sep 2005 Posts: 45 Location: AttainBPM
|
Sorry sanathkumar - at this point I am out of ideas, except to ensure that the workitem object that you are checking in exists in the context, especially if you are setting output container information. |
|
Back to top |
|
 |
|