Feature request

If you have questions or if you want to share your opinion about Aware IM post your message on this forum
Post Reply
Hubertus
Posts: 153
Joined: Sat Feb 11, 2006 2:11 pm
Location: Austria
Contact:

Feature request

Post by Hubertus »

Please, please, please consider 1 additional feature for the next version. What I'd really like to see is the ability to place process calls into a form's cell. Placing process calls in the bottom / header of the form is sometimes misleading when being related to only one special attribute on the form. I know that I can set the cell to type URL but in this case (or did I miss something ?) the execution context isn't available.

Many thanks for taking this feature into consideration,
Hubertus
pixerp
Posts: 180
Joined: Sun Jan 28, 2007 7:12 pm

Post by pixerp »

I was just looking for about the same :

from an HTML cell on a form, I need to call a process

e.g. IMPORT DOCUMENT (given I can supply the full path to the doc from an attribute)

In the User's guide, I only find ways using presentations hyperlink...
Hubertus
Posts: 153
Joined: Sat Feb 11, 2006 2:11 pm
Location: Austria
Contact:

Post by Hubertus »

Calling the process itself doesn't be problem. (I type this from memory so don't blame me in case I'm syntactically wrong)

Code: Select all

<a href=<<SystemSettings.InstallURL>>businessProcess.do?actionMethod=commit&procName=MyProcess>MyProcess</a>
The process itself runs fine but outside the execution context. Therefore I don't see any way to pass data... but maybe Aware Support knows more.

One dirty solution I could think of is that we call the form from a process that sets the value of some SystemSettings attribute before. This BO is _always_ in context and when we call a process from a cell then this process could get the required input from SystemSettings. Definitley strange but should work.
aware_support
Posts: 7527
Joined: Sun Apr 24, 2005 12:36 am
Contact:

Post by aware_support »

You can use the following link:
updateEntity.do?actionMethod=startProcess&processName=NameOfPr
ocess

This will start the specified process and will pass the current instances of the business object (whose form is being displayed) as a context of the process
Aware IM Support Team
Hubertus
Posts: 153
Joined: Sat Feb 11, 2006 2:11 pm
Location: Austria
Contact:

Post by Hubertus »

As always 8) Many thanks for the hint !
Maybe you could state in the doc section of businessProcess.do that updateEntity.do does the same but WITH context.
pixerp
Posts: 180
Joined: Sun Jan 28, 2007 7:12 pm

Post by pixerp »

Support,

I tried HTML cell with :
<a href=updateEntity.do?actionMethod=startProcess&processName=Save> Save</a>
This gives an Internal system error.

So I added a / like <a href=/updateEntity.do?.....

This blanks out the left and main panel in my browser and Tomcat log shows:
.....
Calling BAS server
Server replied to the original request that some UI operation is required
Pushing on stack: /updateEntity.do?actionMethod=handleServerRequest&processFrame=-1[ViewDocument[/updateEntity.do?actionMethod=handleProcessFailure___formInfo=268%40%40Organization%40%40Update%40%40%2FBASTestDomainICM0_tm_Organization_160_Organization+details_Administrator_Administrator_BAS_Tabs.jsp%40%40-1%40%40null%40%40-1%40%40Communication+history%40%40false%40%402%40%40Organization+details%40%401%40%40Organization+details%40%40n___processFrame=null[0
Stack is now /updateEntity.do?actionMethod=displayForm^^formInfo=268%40%40Organization%40%40Update%40%40%2FBASTestDomainICM0_tm_Organization_160_Organization+details_Administrator_Administrator_BAS_Tabs.jsp%40%40-1%40%40null%40%40-1%40%40Communication+history%40%40false%40%402%40%40Organization+details%40%401%40%40Organization+details%40%40n^^statusString=status.operationSuccess^^processFrame=null~~/updateEntity.do?actionMethod=handleServerRequest^^processFrame=-1[ViewDocument[/updateEntity.do?actionMethod=handleProcessFailure___formInfo=268%40%40Organization%40%40Update%40%40%2FBASTestDomainICM0_tm_Organization_160_Organization+details_Administrator_Administrator_BAS_Tabs.jsp%40%40-1%40%40null%40%40-1%40%40Communication+history%40%40false%40%402%40%40Organization+details%40%401%40%40Organization+details%40%40n___processFrame=null[0

Starting Next page: stack is /updateEntity.do?actionMethod=displayForm^^formInfo=268%40%40Organization%40%40Update%40%40%2FBASTestDomainICM0_tm_Organization_160_Organization+details_Administrator_Administrator_BAS_Tabs.jsp%40%40-1%40%40null%40%40-1%40%40Communication+history%40%40false%40%402%40%40Organization+details%40%401%40%40Organization+details%40%40n^^statusString=status.operationSuccess^^processFrame=null~~/updateEntity.do?actionMethod=handleServerRequest^^processFrame=-1[ViewDocument[/updateEntity.do?actionMethod=handleProcessFailure___formInfo=268%40%40Organization%40%40Update%40%40%2FBASTestDomainICM0_tm_Organization_160_Organization+details_Administrator_Administrator_BAS_Tabs.jsp%40%40-1%40%40null%40%40-1%40%40Communication+history%40%40false%40%402%40%40Organization+details%40%401%40%40Organization+details%40%40n___processFrame=null[0

Next page: popped from stack /updateEntity.do?actionMethod=handleServerRequest&processFrame=-1[ViewDocument[/updateEntity.do?actionMethod=handleProcessFailure___formInfo=268%40%40Organization%40%40Update%40%40%2FBASTestDomainICM0_tm_Organization_160_Organization+details_Administrator_Administrator_BAS_Tabs.jsp%40%40-1%40%40null%40%40-1%40%40Communication+history%40%40false%40%402%40%40Organization+details%40%401%40%40Organization+details%40%40n___processFrame=null[0

Stack is now /updateEntity.do?actionMethod=displayForm^^formInfo=268%40%40Organization%40%40Update%40%40%2FBASTestDomainICM0_tm_Organization_160_Organization+details_Administrator_Administrator_BAS_Tabs.jsp%40%40-1%40%40null%40%40-1%40%40Communication+history%40%40false%40%402%40%40Organization+details%40%401%40%40Organization+details%40%40n^^statusString=status.operationSuccess^^processFrame=null
Next page: transferring to page /updateEntity.do?actionMethod=handleServerRequest&processFrame=-1[ViewDocument[/updateEntity.do?actionMethod=handleProcessFailure___formInfo=268%40%40Organization%40%40Update%40%40%2FBASTestDomainICM0_tm_Organization_160_Organization+details_Administrator_Administrator_BAS_Tabs.jsp%40%40-1%40%40null%40%40-1%40%40Communication+history%40%40false%40%402%40%40Organization+details%40%401%40%40Organization+details%40%40n___processFrame=null[0&actionCallStack=/updateEntity.do?actionMethod=displayForm^^formInfo=268%40%40Organization%40%40Update%40%40%2FBASTestDomainICM0_tm_Organization_160_Organization+details_Administrator_Administrator_BAS_Tabs.jsp%40%40-1%40%40null%40%40-1%40%40Communication+history%40%40false%40%402%40%40Organization+details%40%401%40%40Organization+details%40%40n^^statusString=status.operationSuccess^^processFrame=null
- Painter returned no element: com.bas.webapp.cc.r
- Painter returned no element: com.bas.webapp.cc.j
Evaluating condition OutgoingLetter.State<>'Sent'
Condition evaluated to true:Unsent<>Sent
Evaluating condition OutgoingLetter.State<>'Unsent'
Condition evaluated to false:Unsent<>Unsent
Calculating expression OutgoingLetter.ClientDocPath
//192.168.0.112/SharedFolder/LetterICM2_0113E46D0EDBE426.rtf
Evaluating condition OutgoingLetter.LetterDocument IS DEFINED
Condition evaluated to true:true
** End of log *******************

Nothing is logged into BAS server.

So it looks like a hang, no ?

My process runs without problem from a form operation (button).
My version is Dev ed. 977 on Windows, client Win/FF1.5.
Hubertus
Posts: 153
Joined: Sat Feb 11, 2006 2:11 pm
Location: Austria
Contact:

Post by Hubertus »

What if you try <a href=http://localhost:8080/AwareIM/updateEntity.do?actionMethod=startProcess&processName=Save> Save</a> ? :wink:
pixerp
Posts: 180
Joined: Sun Jan 28, 2007 7:12 pm

Post by pixerp »

Maybe aware-support could confirm what is the correct syntax ?

When I try with the full URL (http://tomcatIP:8080/AwareIM/..), my process will execute BUT I get an Internal system error in the bottom msg panel.

The Tomcat log only shows :
...
ActionErrorException thrown with error key error.assertion
com.bas.webapp.actions.d
at com.bas.webapp.actions.UpdateEntityAction.if(Unknown Source)
at com.bas.webapp.actions.UpdateEntityAction.ak(Unknown Source)
at com.bas.webapp.actions.UpdateEntityAction.doExecute(Unknown Source)
at com.cc.framework.adapter.struts.ActionUtil.execute(Unknown Source)
at com.cc.framework.adapter.struts.FWAction.execute(Unknown Source)
at com.cc.framework.adapter.struts.FWAction.execute(Unknown Source)
at com.cc.framework.adapter.struts.RequestProcessorUtil.processAction(Unknown Source)
at com.cc.framework.adapter.struts.FWRequestProcessor.processActionPerform(Unknown Source)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:397)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:704)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:474)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:409)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:312)
at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1056)
at com.cc.framework.adapter.struts.FWRequestProcessor.processForwardConfig(Unknown Source)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:231)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:397)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
....
aware_support
Posts: 7527
Joined: Sun Apr 24, 2005 12:36 am
Contact:

Post by aware_support »

The link should be just "updateEntity.do?..."

We tested it on our systems and it seems to work fine. What sort of error are you having. Is there anything in the Aware IM Server or Tomcat log?
Aware IM Support Team
pixerp
Posts: 180
Joined: Sun Jan 28, 2007 7:12 pm

Post by pixerp »

I already posted the Tomcat log in the previous message.

I gave it another trial with th following HTML cell :
<a href='updateEntity.do?actionMethod=startProcess&processName=ImportDoc'>Save doc</a>

This gives the same "Internal system error" on the red bottom stripe and the same Tomcat log as above. Nothing gets logged into AwareIM server.
The process is executed but the error makes it displaying back the main panel (BAS_Welcome).
aware_support
Posts: 7527
Joined: Sun Apr 24, 2005 12:36 am
Contact:

Post by aware_support »

Hard to say what's going on without looking at your configuration and reproducing the problem. Like I said everything seems to be working fine in our test harnesses.

Does the process that you are trying to invoke take the object whose form is being displayed as an input parameter?
Aware IM Support Team
pixerp
Posts: 180
Joined: Sun Jan 28, 2007 7:12 pm

Post by pixerp »

No, the process input is empty.
aware_support
Posts: 7527
Joined: Sun Apr 24, 2005 12:36 am
Contact:

Post by aware_support »

Try to add the object as process input - see if it makes any difference.
Aware IM Support Team
pixerp
Posts: 180
Joined: Sun Jan 28, 2007 7:12 pm

Post by pixerp »

Adding the BO to the process input doesn't make any difference. But if, on top, I add VIEW bo at the end of my Import Document process the Internal System Error disappears.

=> seems like updateEntity.do? doesn't remember the calling form/context ??

So I investigated a little further as follows :

1. display Organization details with OutgoingLetter as Table of items
2. Edit one instance of OutgoingLetter which has same processes defined in Operations invoked from the form and in HTML cells (updateEntity.do)

If I use the Operations buttons, processes Export / Import Document work OK and the OutgoingLetter Back button will always bring me back to the calling Organization Form.

If I use the processes in hyperlink cells, the Welcome panel gets displayed with Internal System Error and the OutgoingLetter Back button looses the link to the Organization form. If I add OutgoingLetter to the Process Input and action VIEW OutgoingLetter, the Internal System Error disappears and the OutgoingLetter form gets displayed. But then, the Back button obviously displays the Welcome panel (link to Organization form is lost).

In the end, you may ask Why not just use the Operations buttons if they work correctly ?

Well, the problem is UI consistency : either I can do everything from Operations buttons or from Hyperlinks. At the moment, I can't open a file (document) using file:///path/filename from a process whereas I can from an HTML cell. The other operations I need (Export/Import Document) seem only correctly handled from a process and not from hyperlink ....

Any suggestion ?
Thanks.
Post Reply