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

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

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

    大漠駝鈴

    置身浩瀚的沙漠,方向最為重要,希望此blog能向大漠駝鈴一樣,給我方向和指引。
    Java,Php,Shell,Python,服務器運維,大數(shù)據(jù),SEO, 網(wǎng)站開發(fā)、運維,云服務技術(shù)支持,IM服務供應商, FreeSwitch搭建,技術(shù)支持等. 技術(shù)討論QQ群:428622099
    隨筆 - 238, 文章 - 3, 評論 - 117, 引用 - 0
    數(shù)據(jù)加載中……

    A Hello World Application in Warp

    Getting started with Wideplay's Warp Framework

    First download warp and its dependencies from the link provided above. For convenience, dependencies are packaged along with the warp core library in a zip file named warp-with-deps.zip. Unzip and place the provided jars into your application's WEB-INF/lib folder. Create a web.xml file in WEB-INF, and add the following filter mapping to it:

    <?xml version="1.0" encoding="UTF-8"?>

    <web-app version="2.4"

    xmlns="http://java.sun.com/xml/ns/j2ee"

    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" >

    	<context-param>

    <param-name>warp.module</param-name>

    <param-value>my.example.MyModule</param-value>
    	</context-param>



    <filter>

    <filter-name>warp</filter-name>

    <filter-class>com.wideplay.warp.WarpFilter</filter-class>

    </filter>



    <filter-mapping>

    <filter-name>warp</filter-name>

    <url-pattern>/*</url-pattern>

    </filter-mapping>

    </web-app>


    Note that the parameter warp.module must specify the class name of your Warp Module class. This is typically a class that looks like so:

    package my.example; 
    public class MyModule implements WarpModule {
     	public void configure(Warp warp) {
    		//nothing required yet

     	}

     

    Now, this tells Warp to look in package my.example for page classes (and resources) to register to the runtime. Every class in the WarpModule's package and its sub-packages are considered candidates for page object registration (but only those that have corresponding templates are typically registered). You can also perform a lot of setup work in the WarpModule as we will see later on. 

    In Warp, a page is represented by a page object, and any manipulation of that page or its state is driven from the page object. OK, let's create a simple page to say hello to the world:

    package my.example;
    public class Start {

    private String message = "hello warp!";
     	//getter... 

    public String getMessage() { return message; }   

     

    In Warp, page objects are always be accompanied by a template (in this case a standard HTML template) to tell Warp how to decorate and layout the content in the page. As a convention, templates are named the same as page classes (in our case, Start.html in the / directory):

    <?xml version="1.0" encoding="UTF-8"?>

    <html xmlns:w="http://www.wideplay.com/warp/schema/warp_core.xsd"

    xmlns="http://www.w3.org/1999/xhtml"

    xml:lang="en" lang="en">



    <head>

    <title>Warp :: Hello World</title>

    </head>



    <body w:component="frame">

    <p>
    			${message}

    </p>

    </body>

    </html>


    Note that the only unusual part about this template is the attribute on body named w:component which tells Warp to decorate the <body> tag with a Frame component. The Frame component is used on nearly every page and is a kind of "wrapper" for the page (and should always be present on the <body> tag) which creates some necessary conditions for the rendering of the page by the Warp framework.

    The other noteworthy part of the template is the ${message} expression, which is a property expression telling Warp to look into the corresponding page object for a property named message. If you look above, we've declared message as a String in our Start page class. 

    You should now have a web application with roughly the following structure:

    	/
    	 - Start.html 
    	 - WEB-INF/
    		- web.xml
    		+ lib/
    		+ classes/

    Running the web aplication and pointing your browser at http://localhost:8080/Start now will produce the following page output:



    Contribute to the Warp Framework

    Get involved! Email me on the Warp mailing list if you want to help or have a problem to report. Problems with Guice should be reported on the Guice user mailing list.

    posted on 2009-02-17 16:28 草原上的駱駝 閱讀(296) 評論(0)  編輯  收藏 所屬分類: JAVA框架

    主站蜘蛛池模板: 四虎永久在线精品免费网址| 亚洲午夜理论片在线观看| 真人无码作爱免费视频| 日韩免费一区二区三区在线播放| 婷婷精品国产亚洲AV麻豆不片| 国产亚洲美女精品久久久久| 四虎在线免费播放| 亚洲欧美日韩久久精品| 永久在线毛片免费观看| 亚洲精品色在线网站| mm1313亚洲精品国产| 一级做a爰全过程免费视频毛片| 免费人成年激情视频在线观看| 男女超爽视频免费播放| 久久久久亚洲爆乳少妇无| 中文字幕免费在线视频| 久久精品亚洲视频| 57pao国产成永久免费视频| 又粗又大又硬又爽的免费视频| 久久亚洲AV成人无码国产最大| 国产成人免费a在线视频app| 一级毛片免费不卡直观看| 久久久久亚洲精品无码网址| 久久国产免费观看精品| 精品无码一区二区三区亚洲桃色| 国产乱子精品免费视观看片| 亚洲人成无码网站在线观看| 亚洲AV无码一区二区三区在线观看| 亚洲AV本道一区二区三区四区| 99re这里有免费视频精品| 亚洲jjzzjjzz在线播放| 国产成人免费AV在线播放| 亚洲小视频在线观看| 国产在线观看xxxx免费| 亚洲成人免费网站| 在线永久免费观看黄网站| 亚洲欧洲另类春色校园网站| 99热这里只有精品6免费| 国产成人精品日本亚洲专区6| 免费国产成人高清在线观看麻豆 | 我们的2018在线观看免费高清|