`
acheron
  • 浏览: 66364 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

GAE上使用Struts2

阅读更多

Google App Engine for Java

这里看GAE支持的java框架/技术/语言 列表

http://groups.google.com/group/google-appengine-java/web/will-it-play-in-app-engine

 

然后是让Struts2运行在gae上的方法

这里有2个相关资料

 http://groups.google.com/group/google-appengine-java/browse_thread/thread/19018b0317f27817/ec19c458bb15413b?lnk=gst&q=struts2#ec19c458bb15413b

 

http://www.nabble.com/Google-App-Engine-support--td22972179.html

 

只看下文也可以

使用Struts2时候报异常

WARNING: Caught OgnlException while setting property 'location' on type
'org.apache.struts2.dispatcher.ServletDispatcherResult'.
java.lang.IllegalAccessException: Method [public void
org.apache.struts2.dispatcher.StrutsResultSupport.setLocation(java.lang.Str­ing)]
cannot be accessed.
   at ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:508)
   at ognl.OgnlRuntime.callAppropriateMethod(OgnlRuntime.java:812)

 

SEVERE: ParametersInterceptor - [setParameters]: Unexpected Exception
caught setting 'name' on 'class com.ociweb.gaestruts2.HelloAction: Error
setting expression 'name' with value '[Ljava.lang.String;@24de7d'

 

解决方法:

1. 建class如下

package com.jun.util.listener;

import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.http.HttpSessionAttributeListener;
import javax.servlet.http.HttpSessionBindingEvent;
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;

import ognl.OgnlRuntime;

/**
 * 为了让Struts2能在AppEngine上运行,因此要在web.xml中添加这个监听 **
 */
public class InitListener implements ServletContextListener,
		HttpSessionListener, HttpSessionAttributeListener {

	public InitListener() {
	}

	public void contextInitialized(ServletContextEvent sce) {
		OgnlRuntime.setSecurityManager(null);
	}

	public void contextDestroyed(ServletContextEvent arg0) {
		// TODO Auto-generated method stub
	}

	public void sessionCreated(HttpSessionEvent arg0) {
		// TODO Auto-generated method stub
	}

	public void sessionDestroyed(HttpSessionEvent arg0) {
		// TODO Auto-generated method stub
	}

	public void attributeAdded(HttpSessionBindingEvent arg0) {
		// TODO Auto-generated method stub
	}

	public void attributeRemoved(HttpSessionBindingEvent arg0) {
		// TODO Auto-generated method stub
	}

	public void attributeReplaced(HttpSessionBindingEvent arg0) {
		// TODO Auto-generated method stub
	}

}

 

 

2.web.xm配置监听器

<listener>
         <listener-class>com.jun.util.listener.InitListener</listener-class> 
</listener> 

 

此时再运行你的struts2项目就行了

分享到:
评论
4 楼 lattimore 2011-10-23  
swanky_yao 写道
wukaiwhu 写道
楼主你好,我也在尝试把struts2加到gae里去,程序在本地gae环境下运行正常.就是上传时新添加的那些jar包都不会上传,不知道这是为什么,你有碰到这种情款么? 我的struts2相关jar库文件都已经放在了WEB-INF/lib里.


你把他copy到WEB-INF/lib里,但是你还得在MyEclipse里把这些lib添加到项目里才行啊。在java build libs里添加jars



你似乎还没有回答到点子上!
3 楼 swanky_yao 2010-03-25  
wukaiwhu 写道
楼主你好,我也在尝试把struts2加到gae里去,程序在本地gae环境下运行正常.就是上传时新添加的那些jar包都不会上传,不知道这是为什么,你有碰到这种情款么? 我的struts2相关jar库文件都已经放在了WEB-INF/lib里.


你把他copy到WEB-INF/lib里,但是你还得在MyEclipse里把这些lib添加到项目里才行啊。在java build libs里添加jars
2 楼 fkpwolf 2009-11-18  
http://groups.google.com/group/google-appengine-java/web/will-it-play-in-app-engine?pli=1
这个链接很好,顶LZ
1 楼 wukaiwhu 2009-07-24  
楼主你好,我也在尝试把struts2加到gae里去,程序在本地gae环境下运行正常.就是上传时新添加的那些jar包都不会上传,不知道这是为什么,你有碰到这种情款么? 我的struts2相关jar库文件都已经放在了WEB-INF/lib里.

相关推荐

    Struts2,Spring,JDO,AJAX on GAE

    在GAE上使用Struts2,需要注意GAE的限制,比如不能使用本地文件系统,可能需要调整持久化策略。 2. Spring:Spring框架是一个全面的企业级应用开发框架,支持依赖注入、AOP(面向切面编程)、事务管理等。在GAE上,...

    GAE Struts2配置

    标题中的“GAE Struts2配置”指的是在Google App Engine (GAE) 上配置Struts2框架的过程。GAE是一个基于Java的云平台,允许开发者部署Web应用,而Struts2是一个流行的MVC(模型-视图-控制器)框架,用于构建Java Web...

    基于GAE的Demo

    【基于GAE的Demo】是一个使用Eclipse集成开发环境构建的项目,主要展示了如何在Google App Engine(GAE)平台上整合Struts2、Spring和Tiles框架。GAE是Google提供的一个云计算平台,允许开发者在Google的基础设施上...

    gae strus2 spring 整合

    在Google App Engine(GAE)上整合Struts2和Spring,主要是为了克服GAE对传统Java EE功能的限制,如JDBC的使用。GAE提供了自己的数据存储服务(如Datastore),以及对HTTP请求处理的特定机制。开发者需要确保Struts2...

    GAE中整合SSH2的空项目备份

    4. **拦截器集成**:Spring和Struts2都可以使用拦截器来实现AOP(面向切面编程),需要进行相应的配置以使它们协同工作。 5. **测试与调试**:确保所有配置正确无误后,进行单元测试和集成测试,以验证Spring和...

    miniStruts 适合GAE(Google app engine)的小型框架(Struts 1.x的克隆)

    虽然描述信息为空,但从标题中我们可以推断,miniStruts 是为了解决在 GAE 平台上使用 Struts 1.x 可能遇到的问题而创建的。GAE 有特定的运行环境和资源限制,例如对Java应用服务器的限制、内存限制以及对数据库和...

    gea 整合struts2+jpa+spring实例

    在本实例中,我们将探讨如何将Google App Engine (GAE) 与三个强大的Java框架——Struts2、JPA(Java Persistence API)以及Spring进行整合,以构建一个高效的Web应用程序。GAE是一个由Google提供的云平台,允许...

    GAE开发环境(日文)

    - **Struts2 与 GAE的集成**:尽管Struts2在GAE上的支持可能有限,但可以尝试将Struts2的MVC模式应用于GAE项目,以实现更复杂的业务逻辑和用户界面管理。 在开发过程中,还需要了解和使用`Web.XML`文件来配置应用...

    freemarker-gae-pre2.jar包

    FreeMarker是专为实际的一代的 HTML 网页,特别是通过的servlet为基础的应用程序... 但是请注意,我们提供了型的解决方案中使用FreeMarker作为视图组成部分模型2框架(如Struts的) ,这也让你使用JSP的taglibs的模板。

    Google App Engine1.3.0 java sdk 第一部分

    GAE支持标准的Servlet API,因此开发者可以使用熟悉的Java Web开发工具和框架,如Spring或Struts。 **开发流程** 1. **安装SDK**:下载并安装appengine-java-sdk-1.3.0_d9soft-part1压缩包,解压后配置环境变量,...

    GAR for java

    google app engine for java sample ,build up with struts2 + spring2 + GAE . Has include sample DB control.

    SSH框架配置攻略

    2. **配置Struts**:创建 struts-config.xml 文件,配置 Action 映射等。 #### 八、技术融合实现 完成以上配置后,需要确保各个框架之间能够顺利交互。这通常涉及以下步骤: 1. **整合配置**:确保 Spring 配置...

    MyEclipse_6.5.0GA_E3.3.2_Installer_A

    2. **J2EE应用开发**:MyEclipse内置了对Java EE标准的支持,包括Servlet、JSP、JSF、EJB等,可以方便地创建、配置和部署企业级应用程序。 3. **Web开发工具**:对于Web开发,MyEclipse提供了HTML、CSS、JavaScript...

    基于SSH框架的云计算网上书店系统研究.pdf

    使用GAE平台的好处在于,应用程序易于建立和维护,并且能够根据应用程序自身的流量和数据存储需求进行扩展。GAE云平台为网上书店系统提供了一个可靠、可扩展的托管环境,有助于提升服务的稳定性和可用性。 在系统的...

    SSH配置手册

    2. **编写DAO层**: 使用Hibernate技术实现数据访问对象(DAO),测试增删改查功能。 3. **前端页面测试**: 利用Struts框架创建Action类,处理请求并调用DAO方法,最后返回视图。 #### 结论 SSH配置手册为Java...

    ssh框架配置与应用

    - **开发工具**:MyEclipse 6.0.1 GAE 3.3.1 - **Java虚拟机**:JDK 1.6 - **服务器**:Tomcat 6 - **数据库**:MySQL 5.0、Navicat 8 Lite for MySQL - **SSH框架**:Spring 2.0、Struts 1.2、Hibernate 3.1 这些...

    AryaAppServer:Google App Engine 中 Arya App Server 的代码库

    2. **数据存储**:GAE提供了NoSQL数据库服务,即Datastore,它支持高可用性和水平扩展。 3. **任务队列**:用于处理异步任务,如发送电子邮件或执行后台计算。 4. **API访问**:开发者可以利用Google的多种服务,如...

    IDEA教程中文版。

    - **Struts 1.x/Struts 2**: 分别支持 Struts 1 和 Struts 2 框架,包括 XML 和 Tag 提示。 - **Tapestry**: 支持 Tapestry 框架,这是一个结合了 MVC 和模板技术的 Java Web 框架。 - **Vaadin**: 支持 Vaadin 框架...

Global site tag (gtag.js) - Google Analytics