JBoss Community

Re: AS 7 demos

created by Kabir Khan in JBoss AS7 Development - View the full discussion

I am trying the following but am seeing 'no ds injected'. Should this work at this stage?

 

package org.jboss.as.demos.warwithds.archive;

 

import java.io.IOException;

import java.io.Writer;

import java.sql.Connection;

import java.sql.ResultSet;

 

import javax.annotation.Resource;

import javax.naming.InitialContext;

import javax.servlet.ServletException;

import javax.servlet.annotation.WebServlet;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import javax.sql.DataSource;

 

import org.jboss.logging.Logger;

 

/**

*

* @author <a href="kabir.khan@jboss.com">Kabir Khan</a>

* @version $Revision: 1.1 $

*/

@WebServlet(name="SimpleServlet", urlPatterns={"/simple", "/other"})

public class SimpleServlet extends HttpServlet {

 

    private static final long serialVersionUID = -2579304186167063651L;

 

    Logger log = Logger.getLogger(SimpleServlet.class.getName());

 

    @Resource(mappedName="java:/H2DS")

    DataSource ds;

 

    @Override

    protected void doGet(HttpServletRequest req, HttpServletResponse resp)

            throws ServletException, IOException {

 

        if (ds == null) {

            System.out.println("No ds injected");

            try {

                ds = (DataSource)new InitialContext().lookup("java:/H2DS");

            } catch (Exception e) {

                throw new ServletException("Could not find ds", e);

            }

        }

        String result = "Failure";

        try {

            Connection conn = ds.getConnection();

            ResultSet rs = conn.prepareStatement("select 1").executeQuery();

            if (rs.next()) {

                result = "Success";

            }

        } catch (Exception e) {

            throw new ServletException(e);

        }

 

        Writer writer = resp.getWriter();

        writer.write("Simple Servlet datasource " + result);

    }

 

    @Override

    protected void doPost(HttpServletRequest req, HttpServletResponse resp)

            throws ServletException, IOException {

        this.doGet(req, resp);

    }

}

Reply to this message by going to Community

Start a new discussion in JBoss AS7 Development at Community