论坛首页 Java企业应用论坛

[提问]webwork的helloworld问题

浏览 5932 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2005-08-03  
按照moxie(安子)写的那个webwork文档,自己写了一个helloworld类,该类如下:
package helloWorld;

import com.opensymphony.xwork.Action;

public class HelloWorldAction implements Action {

String greeting;

public HelloWorldAction() {
}

public String getGreeting() {
return greeting;
}

public String execute() throws Exception {
greeting = "Hello World!";
return SUCCESS;
}
}

写了一个jsp文件greetings.jsp:
<%@ taglib prefix="ww" uri="webwork" %>
<html>
<head>
    <title>First WebWork Example</title>
</head>
<body>
<p><ww:property value="greeting"/></p>
</body>
</html>

文件web.xml是参考webwork-example中的来定义的,如下:
    <servlet>
        <servlet-name>webwork</servlet-name>
        <servlet-class>com.opensymphony.webwork.dispatcher.ServletDispatcher</servlet-class>
    </servlet>

    <servlet-mapping>
        <servlet-name>webwork</servlet-name>
        <url-pattern>*.action</url-pattern>
    </servlet-mapping>

    <taglib>
        <taglib-uri>webwork</taglib-uri>
        <taglib-location>/WEB-INF/webwork.tld</taglib-location>
    </taglib>



文件xwork.xml内容如下:
<!DOCTYPE xwork PUBLIC "-//OpenSymphony Group//XWork 1.0//EN"

"http://www.opensymphony.com/xwork/xwork-1.0.dtd">

<xwork>
    <package name="helloworld">
<action name="hello" class="helloWorld.HelloWorldAction">
            <result name="success" type="dispatcher">
                <param name="location">/greetings.jsp</param>
            </result>
        </action>
    </package>
</xwork>

工程部署是:
HelloWebWork/greetings.jsp
HelloWebWork/WEB-INF/classes
HelloWebWork/WEB-INF/lib
HelloWebWork/WEB-INF/web.xml
其中lib下面放的包是webwork-2.1.7中lib目录下文件core下的所有包,再加上webwork-2.1.7.jar;
文件xwork.xml位置是在classes目录下的。

服务器是tomcat 5.0.27
下面是运行后页面出现的错误:
description  The server encountered an internal error () that prevented it from fulfilling

this request.

exception

com.opensymphony.xwork.config.ConfigurationException: Error loading configuration file

xwork.xml with nested exception
com.opensymphony.xwork.config.ConfigurationException: Error building results for action
hello in namespace with nested exception
com.opensymphony.xwork.config.ConfigurationException: There is no result type defined for
type 'dispatcher' mapped with name 'success'
com.opensymphony.xwork.config.providers.XmlConfigurationProvider.init
(XmlConfigurationProvider.java:127)
com.opensymphony.xwork.config.impl.DefaultConfiguration.reload
(DefaultConfiguration.java:85)
com.opensymphony.xwork.config.ConfigurationManager.getConfiguration
(ConfigurationManager.java:56)
com.opensymphony.xwork.DefaultActionProxyFactory.setupConfigIfActionIsCommand
(DefaultActionProxyFactory.java:58)
com.opensymphony.xwork.DefaultActionProxyFactory.createActionProxy
(DefaultActionProxyFactory.java:43)
com.opensymphony.webwork.dispatcher.ServletDispatcher.serviceAction
(ServletDispatcher.java:270)
com.opensymphony.webwork.dispatcher.ServletDispatcher.service
(ServletDispatcher.java:237)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

调试一天还是没能找到问题在哪,帮帮给看看吧,想学习一下webwork,可第一个例子就给难住了...
   发表时间:2005-08-03  
你没有告诉服务器你的那些result在哪里定义的,你的xwork.xml里面的package的配置有问题。extends  webwork自带的xml配置文件就ok了
0 请登录后投票
   发表时间:2005-08-03  
<include file="webwork-default.xml"/>

<package name="helloWorld" extends="webwork-default">
0 请登录后投票
   发表时间:2005-08-03  
十分感谢两位搂主,按照你们说的的确搞定了,现在刚开始学习webwork,以后有问题还得麻烦两位高手呢,
0 请登录后投票
   发表时间:2005-08-03  
jie_java 写道

文件xwork.xml内容如下:
<!DOCTYPE xwork PUBLIC "-//OpenSymphony Group//XWork 1.0//EN"

"http://www.opensymphony.com/xwork/xwork-1.0.dtd">

<xwork>
<package name="helloworld">
<action name="hello" class="helloWorld.HelloWorldAction">
<result name="success" type="dispatcher">
<param name="location">/greetings.jsp</param>
</result>
</action>
</package>
</xwork>


这个配置是有问题的,应该这样
<?xml version="1.0" encoding="gbk"?>
<!DOCTYPE xwork
    PUBLIC "-//OpenSymphony Group//XWork 1.0//EN"
    "http://www.opensymphony.com/xwork/xwork-1.0.dtd">

<xwork>
    <include file="webwork-default.xml"/>
    <default-interceptor-ref name="defaultStack"/>

    <package name="hello" extends="webwork-default">
       <action name="hello" class="helloWorld.HelloWorldAction">
           <result name="success" type="dispatcher">
                <param name="location">/greetings.jsp</param>
           </result>
      </action>
    </package>
</xwork>
0 请登录后投票
   发表时间:2005-08-21  
建议部署 webwork 自带的example
先感性认识一下 这个MVC killer
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics