I am acquiring data from db by calling the SessionBean from the Servlet, and 
using EntityManager.
It is not possible to achieve it well though it wants to return Servlet the 
data of 
the EntityBean type acquired in the SessionBean, and to pass it to JSP. 
It is displayed in the log of jboss, "INFO [STDOUT] null". 
The character of String Type can be normally passed.
It was similar though not only EntityBean but also the DTO object was executed 
making it. 

Am I doing something mistake?
could anyone have advice for me?


JSP
  | <html>
  |   <head><title>EJB Test</title></head>
  |   <BODY bgcolor="#ffffff">
  | <%
  |   Value v = new Value();
  |   v = (Value)request.getAttribute("__value");
  |   ListIterator userlist = (ListIterator)v.getAttribute("userlist");
  | %>
  |     <table width="400" border="0" cellpadding="0" cellspacing="0">
  |       <tr> 
  |         <td valign="top"> 
  |           <div align="center">
  |             Result
  |             <table width="400" border="1" cellspacing="1" width="100%" 
cellpadding="5" height="62">
  |               <tr> 
  |                 <td align="right" width="100" height="30">ID</td>
  |                 <td  height="30">passwd</td>
  |                 <td  height="30">name</td>
  |               </tr>
  | <%
  |   while(userlist.hasNext()){
  |     UserBean user = new UserBean();
  |     user = (UserBean)userlist.next();
  | %>
  |               <tr> 
  |                 <td align="right" height="30"><%=user.getUserId()%></td>
  |                 <td  height="30"><%=user.getPasswd()%></td>
  |                 <td  height="30"><%=user.getName()%></td>
  |               </tr>
  | <%
  |   }
  | %>
  |             </table>
  |           </div>
  |         </td>
  |       </tr>
  |     </table>
  |   </BODY>
  | </html>

View Controler Servlet Class
  | public class MHServlet extends HttpServlet {
  |     public void service(HttpServletRequest req, HttpServletResponse res) 
throws ServletException, IOException {
  |         try{
  |             String event = "";
  |             event = new 
String(req.getParameter("__magazine").getBytes("8859_1"), "EUC-JP");
  |             
  |             Hashtable param = new Hashtable();
  |             for (Enumeration e = req.getParameterNames(); 
e.hasMoreElements();) {
  |                 String key = (String)e.nextElement();
  |                 param.put(key, new 
String(req.getParameter(key).getBytes("8859_1"), "EUC-JP"));
  |             }
  |             
  |             Value value = null;
  |             Context context = new InitialContext();
  |             if(event.equals("MH006_001")){
  |                 MH006_001 c = 
(MH006_001)context.lookup(MH006_001.class.getName());
  |                 value = c.doBiz(param);            }
  |             forward(value, req, res);
  |             
  |         }catch(Exception e){
  |             System.out.println(e.getMessage());
  |         }
  |     }
  |     private void forward(Value value, HttpServletRequest req, 
HttpServletResponse res){
  |         req.setAttribute("__value", value);
  |         RequestDispatcher rd = 
getServletContext().getRequestDispatcher(value.getForwardPage());
  |         
  |         try{
  |             rd.forward(req, res);
  |         }catch(ServletException e){
  |             puterror(e.getMessage(), res);
  |         }catch(IOException e){
  |             puterror(e.getMessage(), res);
  |         }
  |     }
  | }

SessionBean Class
  | @Stateful
  | @javax.ejb.Remote(MH006_001.class)
  | 
  | public class MH006_001Bean implements MH006_001, Serializable{
  |     private String    searchId;
  |     @PersistenceContext//(unitName="ejb3mn")
  |     protected  EntityManager em;
  | 
  |     public Value doBiz(Hashtable param){
  |         String  page = "/jsp/MH007.jsp";
  |         int     count = 0;
  |         Value value = new Value();
  |         try{
  |             searchId = (String)param.get("searchId");
  | 
  |             Query query = em.createQuery("select OBJECT(o) from UserBean o 
where o.userId like :userId");
  |             query.setParameter("userId", "%"+ searchId + "%");
  |             List userlist = query.getResultList();
  |             count = userlist.size();
  | 
  |             LinkedList ret = new LinkedList();
  |             for(int i=0; i<count; i++){
  |                 UserBean user = (UserBean)userlist.get(i);
  |                 ret.add(user);
  |             }
  |             value.setAttribute("userlist", ret.listIterator(0));
  |             value.setForwardPage(page);
  | 
  |         }catch(Exception ex){
  |             System.out.println("***** MH006_001Bean.doBiz catch ex = " + 
ex);
  |             value.setForwardPage("/jsp/Error.jsp");
  |         }
  |         return value;
  |     }
  | }

Class returned to servlet(It is in the same package as bean.)
  | public class Value implements Serializable{
  |     private String        nextPage = null;
  |     private Hashtable    value = null;
  | 
  |     public Value(){
  |         value = new Hashtable();
  |     }
  | 
  |     public void setForwardPage(String page){
  |         nextPage = page;
  |     }
  | 
  |     public String getForwardPage(){
  |         return nextPage;
  |     }
  | 
  |     public void setAttribute(Object key, Object data){
  |         value.put(key, data);
  |     }
  | 
  |     public Object getAttribute(Object key){
  |         return value.get(key);
  |     }
  | }


View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3933990#3933990

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3933990


-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
_______________________________________________
JBoss-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to