<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    俊星的BLOG

    APACHE Geronimo 試用之EJB3

      Geronimo是APACHE出品的一個(gè)JEE應(yīng)用服務(wù)器,支持JMS,JDBC,EJB等,下面是我的試用:
    接口類:
    package ejb;

    import java.math.BigDecimal;
    import javax.ejb.Remote;

    @Remote
    public interface Converter {
        
    public BigDecimal dollarToRupees(BigDecimal dollars);

        
    public BigDecimal rupeesToEuro(BigDecimal rupees);
    }

    BEAN類:
    package ejb;

    import java.math.BigDecimal;
    import javax.ejb.*;

    @Stateless
    public class ConverterBean implements Converter {
        
    private BigDecimal rupeeRate = new BigDecimal("40.58");
        
    private BigDecimal euroRate = new BigDecimal("0.018368");

        
    public BigDecimal dollarToRupees(BigDecimal dollars) {
            BigDecimal result 
    = dollars.multiply(rupeeRate);
            
    return result.setScale(2, BigDecimal.ROUND_UP);
        }


        
    public BigDecimal rupeesToEuro(BigDecimal rupees) {
            BigDecimal result 
    = rupees.multiply(euroRate);
            
    return result.setScale(2, BigDecimal.ROUND_UP);
        }

    }

    引用EJB的Servlet:
    package webejb;

    import ejb.Converter;

    import java.io.IOException;
    import java.io.PrintWriter;
    import java.math.BigDecimal;

    import javax.ejb.EJB;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;

    public class ConverterHandler extends javax.servlet.http.HttpServlet implements
            javax.servlet.Servlet 
    {
        @EJB(name 
    = "ejb/Converter")
        
    private Converter converter;

        
    protected void doGet(HttpServletRequest request,
                HttpServletResponse response) 
    throws ServletException, IOException {
            PrintWriter out 
    = response.getWriter();
            String amount 
    = request.getParameter("amount");
            
    if (amount != null && amount.length() > 0{
                BigDecimal d 
    = new BigDecimal(amount);
                BigDecimal rupeeAmount 
    = converter.dollarToRupees(d);
                out.println(
    "<p>" + amount + " Dollars are " + rupeeAmount
                        
    + " Rupees.<p>");
                BigDecimal euroAmount 
    = converter.rupeesToEuro(rupeeAmount);
                out.println(amount 
    + " Dollars are " + euroAmount + " Euro.");
            }

        }


        
    protected void doPost(HttpServletRequest request,
                HttpServletResponse response) 
    throws ServletException, IOException {
            doGet(request, response);
        }

    }

    geronimo-web.xml配置文件:
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns="http://geronimo.apache.org/xml/ns/j2ee/web-2.0.1" 
    xmlns:nam
    ="http://geronimo.apache.org/xml/ns/naming-1.2" 
    xmlns:sec
    ="http://geronimo.apache.org/xml/ns/security-2.0" 
    xmlns:sys
    ="http://geronimo.apache.org/xml/ns/deployment-1.2">

        
    <sys:environment>
            
    <sys:moduleId>
                
    <sys:groupId>default</sys:groupId>
                
    <sys:artifactId>WebEJB</sys:artifactId>
                
    <sys:version>1.0</sys:version>
                
    <sys:type>car</sys:type>
            
    </sys:moduleId>
            
    <sys:dependencies>
                
    <sys:dependency>
                    
    <sys:groupId>default</sys:groupId>
                        
    <sys:artifactId>TestEJB</sys:artifactId>
                      
    <sys:version>1.0</sys:version>
                      
    <sys:type>car</sys:type>
                
    </sys:dependency>        
            
    </sys:dependencies>
        
    </sys:environment>

        
    <context-root>/WebEJB</context-root>

        
    <nam:ejb-ref xmlns:nam="http://geronimo.apache.org/xml/ns/naming-1.2">
            
    <nam:ref-name>ejb/Converter</nam:ref-name>
            
    <nam:pattern>
                
    <nam:groupId>default</nam:groupId>
                
    <nam:artifactId>TestEJB</nam:artifactId>
                
    <nam:version>1.0</nam:version>
                
    <nam:name>ConverterBean</nam:name>
            
    </nam:pattern>
        
    </nam:ejb-ref>

    </web-app>

    WEB.XML文件:

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns
    ="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
        xsi:schemaLocation
    ="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
        id
    ="WebApp_ID" version="2.5">
        
    <display-name>WebEJB</display-name>
        
    <welcome-file-list>
            
    <welcome-file>index.jsp</welcome-file>
        
    </welcome-file-list>
        
    <servlet>
            
    <description></description>
            
    <display-name>ConverterHandler</display-name>
            
    <servlet-name>ConverterHandler</servlet-name>
            
    <servlet-class>webejb.ConverterHandler</servlet-class>
        
    </servlet>
        
    <servlet-mapping>
            
    <servlet-name>ConverterHandler</servlet-name>
            
    <url-pattern>/ConverterHandler</url-pattern>
        
    </servlet-mapping>
    </web-app>


    測試頁面index.jsp:

    <html>
    <head>
    <title>Converter</title>
    </head>
    <body bgcolor="white">
    <h1>Converter</h1>
    <hr>
    <p>Enter an amount to convert:</p>
    <form method="get" action="index.jsp"><input type="text"
        name
    ="amount" size="25"><br>
    <p><input type="submit" value="Submit"> <input type="reset"
        value
    ="Reset">
    </form>
    <jsp:include page="/ConverterHandler" />
    </body>


    發(fā)布應(yīng)用:
    1:發(fā)布包含EJB文件的TestEJB.jar
    2:發(fā)布WEB應(yīng)用WebEJB.war
    具體文件請點(diǎn)擊此處下載:http://www.tkk7.com/Files/kinkding/Geromino_EJB_Test.rar
    發(fā)布成功后,通過點(diǎn)擊http://localhost:8080/WebEJB即可看到程序運(yùn)行效果。

    posted on 2009-05-12 21:40 俊星 閱讀(265) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 毛茸茸bbw亚洲人| 四虎成人免费网址在线| 免费国产在线观看不卡| 亚洲色精品VR一区区三区 | 久久久久久99av无码免费网站| 亚洲一区二区三区日本久久九| 中文字幕的电影免费网站| 亚洲色一色噜一噜噜噜| a级片免费观看视频| 在线免费观看亚洲| 性做久久久久久久免费看| 亚洲第一se情网站| 免费看男女下面日出水视频| 一级毛片免费播放男男| 亚洲国产精品一区二区成人片国内 | 中文字幕一区二区三区免费视频| 亚洲熟妇少妇任你躁在线观看| 午夜亚洲av永久无码精品| sihu国产精品永久免费| 亚洲第一中文字幕| 中文字幕av无码无卡免费| 99re6在线精品视频免费播放| 亚洲日韩精品无码AV海量| 亚洲人成无码www久久久| 国产免费人成在线视频| 日韩精品视频免费观看| 一级有奶水毛片免费看| 亚洲www在线观看| jlzzjlzz亚洲乱熟在线播放| 午夜亚洲福利在线老司机| 全黄性性激高免费视频| 国产免费牲交视频| 国产小视频免费观看| 88xx成人永久免费观看| 免费国产黄网站在线看| 内射干少妇亚洲69XXX| 亚洲成人中文字幕| 99久久亚洲精品无码毛片| 在线电影你懂的亚洲| 亚洲精品一区二区三区四区乱码| 亚洲第一成人影院|