[ 
http://www.stripesframework.org/jira/browse/STS-902?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Frederic Daoud closed STS-902.
------------------------------

    Resolution: Not a Bug

Please ask questions on the mailing list; do not create a ticket in Jira.
Thanks!

> testing DataSourceFilter
> ------------------------
>
>                 Key: STS-902
>                 URL: http://www.stripesframework.org/jira/browse/STS-902
>             Project: Stripes
>          Issue Type: Improvement
>          Components: Examples
>            Reporter: Tony Trung Thanh Vo
>              Labels: tests
>
> - I have setup a DataSourceFilter and change the web.xml so that 
> DataSourceFilter will get call before the ActionBean executed to obtain 
> database connection and close database connection after the action bean's 
> execution is finished
> Here's the template code for DataSourceFilter.
> - Is there anyway I can write unit/integration test(s) to make sure that the 
> database connection has been opened and closed properly by DataSourceFitler?
> public class DataSourceFilter implements Filter {
>     private final Logger logger = 
> LoggerFactory.getLogger(DataSourceFilter.class);
>     @Override
>     public void init(FilterConfig filterConfig) throws ServletException {
>         this.logger.info("Datasource Filter has been initialized");
>     }
>     @Override
>     public void destroy() {
>         this.logger.info("Datasource Filter has been destroyed");
>         new DataSourceManager().closeConnection();
>     }
>     @Override
>     public void doFilter(ServletRequest servletRequest, ServletResponse 
> servletResponse, FilterChain filterChain) throws ServletException, 
> IOException {
>         final DataSourceManager dataSourceManager = new DataSourceManager();
>         try {
>             // Ensure that a connection has been retrieved for ThreadLocal
>             dataSourceManager.getConnection();
>             // Ask everything else to process first
>             filterChain.doFilter(servletRequest, servletResponse);
>             // Once everything is done, ensure everything is committed
>             dataSourceManager.getConnection().commit();
>         } catch(Exception exception) {
>             logger.error("Unable to processes the filtered request: " + 
> exception, exception);
>             try {
>                 dataSourceManager.getConnection().rollback();
>             } catch(SQLException sqlException) {
>                 this.logger.error("Unable to processes the filtered 
> request(Rollback): " + sqlException, sqlException);
>             }
>         } finally {
>             dataSourceManager.closeConnection();
>         }
>     }
> }

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

------------------------------------------------------------------------------
Try New Relic Now & We'll Send You this Cool Shirt
New Relic is the only SaaS-based application performance monitoring service 
that delivers powerful full stack analytics. Optimize and monitor your
browser, app, & servers with just a few lines of code. Try New Relic
and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may
_______________________________________________
Stripes-development mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/stripes-development

Reply via email to