eterna框架-环境搭建

在上一篇博客《eterna框架-介绍》中为简单的为大家介绍了eterna框架的内容,今天我们来搭建一个最简单的eterna开发环境。

首先我们需要从eterna首页下载相关jar包。如果无法访问可以通过这里下载

压缩包结构如下:

这里写图片描述

然后我们需要创建一个JAVA WEB项目,项目创建过程可参考《Servlet第一个示例》,这里就不在描述了。
创建完项目后,我们需要把eterna的相关包复制到项目中,除了eterna的jar包外,还需要一些其他的包,lib文件结构如下:

这里写图片描述

导入完jar包后,在WebContent文件夹内新建res文件夹,并将下载的eterna文件中的web目录下内容复制进去

这里写图片描述

和其他的框架一样,我们要让eterna生效,最简单的方式就是在web.xml中配置eterna为我们提供的Servlet,熟悉之后,我们也可以按照需求自己编写,现在我们就是用默认的,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>test</display-name>

    <servlet>
        <servlet-name>study</servlet-name>
        <servlet-class>self.micromagic.app.EternaServlet</servlet-class>
    </servlet>

    <servlet-mapping>
        <servlet-name>study</servlet-name>
        <url-pattern>/study.do</url-pattern>
    </servlet-mapping>
    <!-- 如果需要使用eterna标签则添加,注意对应的文件要添加到项目 -->
    <jsp-config>
        <taglib>
            <taglib-uri>http://code.google.com/p/eterna</taglib-uri>
            <taglib-location>/WEB-INF/tld/eterna.tld</taglib-location>
        </taglib>
    </jsp-config>

</web-app>

准备工作完成,下面我们来编写代码测试一下

新建view.jsp文件,该文件用于显示内容:

<%@ page session="false" contentType="text/html;charset=UTF-8"%><%@
    page
    import="self.micromagic.eterna.view.impl.ViewTool"%><%@
    taglib
    prefix="e" uri="http://code.google.com/p/eterna"%>
<%
   String id = "_" + ViewTool.createEternaId();
%><e:init parentElement="eternaShow" divClass="eternaFrame"
    printHTML="2" suffixId="<%=id%>">
    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <e:res url="/res/jquery.js" />
    <e:res url="/res/eterna.js" />
</e:init>

因为eterna是基于配置的,所以我们要创建配置文件,在src文件夹下创建study包,并在该包下新建index.xml文件,我们将在index.xml中编写eterna配置。

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE eterna-config PUBLIC "eterna" "http://eterna.googlecode.com/files/eterna_1_5.dtd">

<eterna-config>
    <factory>
        <objs>
            <export name="index.export" path="/view.jsp" viewName="index.view" />
            <model name="index" modelExportName="index.export"
                transactionType="notNeed" />
            <view name="index.view">
                <component name="div" type="div"
                    comParam="text:'this is my first eterna application.'" />
            </view>
        </objs>
    </factory>
</eterna-config>

我们现在只是搭建环境,所以暂时不需要知道各标签的含义,编写完配置后,我们需要让配置文件生效,则需要在web.xml中添加初始化文件,修改后的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>test</display-name>

    <servlet>
        <servlet-name>study</servlet-name>
        <servlet-class>self.micromagic.app.EternaServlet</servlet-class>
        <init-param>
            <param-name>initFiles</param-name>
            <param-value>cp:study/index.xml;</param-value>
        </init-param>
    </servlet>

    <servlet-mapping>
        <servlet-name>study</servlet-name>
        <url-pattern>/study.do</url-pattern>
    </servlet-mapping>
    <!-- 如果需要使用eterna标签则添加,注意对应的文件要添加到项目 -->
    <jsp-config>
        <taglib>
            <taglib-uri>http://code.google.com/p/eterna</taglib-uri>
            <taglib-location>/WEB-INF/tld/eterna.tld</taglib-location>
        </taglib>
    </jsp-config>

</web-app>

最后启动服务器,浏览器访问:http://localhost/eterna/study.do,我们会看到浏览器输出一句话

这里写图片描述

这样,我们的eterna环境就可以正常运行了,当然了,这只是一个基本的环境。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值