日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

Tapestry開發(fā)Wap應用程序(原創(chuàng))

 duduwolf 2006-03-10
1搭建環(huán)
我們需要如下開發(fā)環(huán)境:
Eclipse3.1及其以上版本:http://www./downloads/index.php 
MyEclipse4.0及其以上版本:http://www.(可選)

Java SE 5.0及其以上版本:http://www./download/index.jsp 
Tomcat 5.5.12及其以上版本:http://tomcat./download-55.cgi(其他web服務器也可以)

Tapestry4.0包:http://jakarta./site/downloads/downloads_tapestry.cgi 
Tapestry4.0支持包:
http://jakarta./tapestry/dependencies.html 
Opera瀏覽器:
http://www.Opera.com
下載以上這些組建后,我們就可以開發(fā)我們的wap程序了。
安裝Eclipse及MyEclipse的過程我就不詳細介紹了,然后我們用MyEclipse創(chuàng)建一個web工程,我們暫時命名為WapZone,如果你使用的是其他Eclipse組件也無所謂,創(chuàng)建一個普通的web工程即可,但是注意把剛才下載的Tapestry4.0包以及Tapestry4.0支持包中的jar文件拷貝到WEB-INF目錄下,最后的目錄結(jié)構(gòu)如下圖所示。
然后我們進行web.xml配置:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
    xmlns="http://java./xml/ns/j2ee"
    xmlns:xsi="http://www./2001/XMLSchema-instance"
    xsi:schemaLocation="http://java./xml/ns/j2ee
    http://java./xml/ns/j2ee/web-app_2_4.xsd">
     <display-name>Wap Zone</display-name>
     <servlet>
       <servlet-name>article</servlet-name>
<servlet-class>org.apache.tapestry.ApplicationServlet</servlet-class>
     </servlet>
     <servlet-mapping>
        <servlet-name>article</servlet-name>
        <url-pattern>/app</url-pattern>
    </servlet-mapping>
     <mime-mapping>
        <extension>wml</extension>
        <mime-type>text/vnd.wap.wml</mime-type>
     </mime-mapping>
      <mime-mapping>
        <extension>wmls</extension>
        <mime-type>text/vnd.wap.wmlscript</mime-type>
    </mime-mapping>
    <mime-mapping>
        <extension>wbmp</extension>
        <mime-type>image/vnd.wap.wbmp</mime-type>
    </mime-mapping>
     <welcome-file-list>
        <welcome-file>index.wml</welcome-file>
    </welcome-file-list>
</web-app>
這里關鍵的就是配置了一個名字叫article 的servlet,它的 實現(xiàn)類是org.apache.tapestry.ApplicationServlet,并且把所有/app的請求都交這個servlet來處理。
 
接下來在WEB-INF目錄下新建一個XML文件,命名為hivemodule.xml,內(nèi)容如下:
 
<?xml version="1.0" encoding="UTF-8"?>
<module id="WapZone" version="1.0.0" package="com.wap.zone.view">
</module>
這里的module id只是起標識的作用,因為Hivemind可以擁有很多的配置文件,所以一般都使用包名作為id以保證唯一性,package 標識該module的默認包所在路徑。對于初學者來說可能不太理解這個hivemodule.xml文件到底是做什么用的,其實這個文件是Tepestry作者開發(fā)的另一個開源項目Hivemind的配置文件,就象spring里的applicationContext.xml一樣的作用。這個Hivemind開源項目也和spring類似,都是所謂的反轉(zhuǎn)控制的框架,網(wǎng)上有一些介紹它的文章,可以自己去看看,這里就不詳細介紹了,因為我也不太清楚,呵呵。好了,閑話少說,咱們接著往下講。
接下就是在WEB-INF目錄下創(chuàng)建article.application,首先說明一下這個文件的名稱這個文件的名稱和web.xml文件中的<servlet-name>article</servlet-name>是相關的,大家可能已經(jīng)注意到了,這個文件的名稱和<servlet-name>的值是一樣的。文件內(nèi)容如下:
<?xml version="1.0" encoding="UTF-8"?>
 
<!DOCTYPE application PUBLIC
 "-//Apache Software Foundation//Tapestry Specification 4.0//EN"
 "http://jakarta./tapestry/dtd/Tapestry_4_0.dtd">
 
<application name="Wap Zone" engine-class="org.apache.tapestry.wml.WMLEngine">
    <meta key="org.apache.tapestry.template-extension" value="wml"/>
    <meta key="org.apache.tapestry.page-class-packages" value="com.wap.zone.view.article"/>
    <library id="wml" specification-path="/org/apache/tapestry/wml/WML.library"/>
</application>
 在application文件中,我們做了以下事情:
第一:聲明了項目名稱:name=" Wap Zone ",并且定義了engine-class
第二:我們定義了模板文件的擴展名為wml。
第三:我們導入了WML.library。
第四:我們定義了page文件與java文件相互對應的默認包路徑,Tapestry4根據(jù)這個路徑自動去尋找與Home.page同名的Home.java文件,如果找不到,那么就會默認使用BasePage類   
到此為止,開發(fā)環(huán)境已經(jīng)搭建完畢,下面我們先來寫一個小的測試頁面。
首先現(xiàn)在我們在src下新建包:com.wap.zone.view.article,然后在該包下新建一個Home.java文件:
package com.wap.zone.view.article;
 
import org.apache.tapestry.wml.Deck;
 
public abstract class Home extends Deck {
      
       public String getTest() {
              return "Hello World!";
       }
}
接著在WEB-INF/下建一個Home.page文件:
 
<?xml version="1.0" encoding="GBK"?>
<!DOCTYPE page-specification PUBLIC
 "-//Apache Software Foundation//Tapestry Specification 4.0//EN"
 "http://jakarta./tapestry/dtd/Tapestry_4_0.dtd">
 
<page-specification>
 
</page-specification>
最后,我們在web/目錄下新建一個Home.wml文件:
<?xml version="1.0"?>
   <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.2//EN"
   "http://www./DTD/wml12.dtd">
<wml>
    <head>
        <meta http-equiv="Cache-Control" content="must-revalidate" forua="true"/>
        <meta http-equiv="Cache-Control" content="no-cache" forua="true"/>
    </head>
    <template>
        <do type="accept" label="Index">
            <go href="../index.wml" />
        </do>
    </template>
    <card id="card0" title="最新TOP10帖子列表">
    <p>
       <b jwcid="@Insert" value="ognl:test">
             </b>
       </p>
    </card>
</wml>
然后把這個項目部署到tomcat下,在Opera瀏覽器里輸入http://localhost:8080/WapZone/app
就可以看到我們剛才的成果了

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多