In WebSphere 6,  New connection is being requested from Pool when there is 
ActionForward from one Action class to other action class
------------------------------------------------------------------------------------------------------------------------------------

                 Key: STR-2970
                 URL: http://issues.apache.org/struts/browse/STR-2970
             Project: Struts 1
          Issue Type: Bug
    Affects Versions: 1.0.1 Final
         Environment: WebSphere , with Oracle 10G database.
            Reporter: Kishore


On webSphere server when the on the datasoruce with  
oracle.jdbc.pool.OracleConnectionPoolDataSource

In the connection pool properties, Max number of connection is 1 and min number 
of connections is 1.

Request comes to an Action class connection is obtained with in the action 
class and closed the connection.
Control will be forwarded from one action class to other action class using a 
global-forward and action mapping declaration
for example 
<global-forwards>
                        <forward name="AllwdRSRetrieveAction" 
path="/allowedRoutingSheet.do?activity=retrieveFormDetails"></forward>          
                                  

</global-forwards>

<action-mappings>

        <action path="/allowedRoutingSheet" name="AllowedActionForm"  
scope="request" parameter="activity" 
type="gov.uspto.qrs.web.action.exmr.RoutingSheetAction">
                        <forward name="OpqaExmrAllwdRoutingSheetV1" 
path="OpqaExmrAllwdRoutingSheetV1" ></forward>
                        <forward name="OpqaExmrAllwdRoutingSheetPrintV1" 
path="exmr/jsp/allowed/print/OpqaExmrAllwdRoutingSheetPrintV1.jsp" ></forward>
                </action>
</actions-mappings>

. When the control enters the second action class. getConnection() method waits 
for timeout as the datasource doesn;t return any connection. Connection can be 
obtained and closed any number of times with in single action class. But when 
the control forwards from one action class to other action class using global 
forward , The first connection obtained in the first action class is not being 
returned to the pool of free connections until the control goes out of the 
second action class and response is being generated.

If I set Max number of connections in the datasoruce properties on the server 
to 2, the above operation gets successful as the there are 2 connections are 
used from the pool.

 This hits the performance of the application as more number of connections are 
in waiting to fail.

What happens when control is being forwarded from one action class to other 
action class is in shade.


Thanks
Kishore




-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://issues.apache.org/struts/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to