基于maven搭建的struts 1 java工程

今天在家尝试搭建和公司一样的开发环境(struts1+maven+resin),结果遇到很多的问题,记录下来,如果遇到相似问题,可参考;

我的工程下载地址:http://files.cnblogs.com/files/focusahaha/struts1.rar

maven

  maven值得注意的地方其实只有conf文件夹的setting.xml文件,其实不用任何设置就可以使用了。但是也可以通过修改这个文件,手动设置本地maven库的位置,使用镜像(如果使用的是本公司自主搭建的maven库),使用代理(如果用代理上网的话,也要设置下)。

另外如果使用eclipse集成maven,首先需要下载maven安装包(例如:apache-maven-3.2.5-bin.zip),然后下载离线插件eclipse-maven3-plugin.7z,解压后放在eclipse对应位置就可以了。具体可参考网址:http://jingyan.baidu.com/article/60ccbceb01de4d64cbb19756.html,讲解的非常详细。

  最后需要在eclipse中对maven进行设置,首先需要指定使用的maven,因为eclipse安装maven插件会产生一个内置的maven,如果在maven->installations选项中进行修改,会导致eclipse中使用maven命令和命令行中使用maven命令结果不一致,第二点需要设定使用的setting.xml文件的路径,最好把setting.xml拷贝到.m2文件夹内,不要使用maven conf文件夹中的setting.xml,因为不这么干,如果要对maven进行更新,还需要再修改一次setting.xml. 具体参考网址:http://www.cnblogs.com/dcba1112/archive/2011/05/01/2033805.html#3120676

  最后提供下maven 中央仓库的网址,因为你很有可能要查找对应jar包的位置 :http://search.maven.org/#search  

  要搭建maven环境,学习maven

可参考:

1.maven安装以及maven与eclipse集成:http://jingyan.baidu.com/article/60ccbceb01de4d64cbb19756.html

2.maven 配置讲解(其实是maven in action一书的摘抄):http://www.cnblogs.com/dcba1112/archive/2011/05/01/2033805.html#3120676

3.maven jar包位置查找:http://search.maven.org/#search

resin

  resin需要修改的文件只有一个.conf文件,不同版本的resin conf文件夹内容不同,我使用的是resin-3.1.12.zip,因为这个版本conf文件夹内有.conf文件的例子。

  使用eclipse集成resin,其实只需要修改一个位置<web-app></web-app>,修改后的<web-app>标签内容为:

    <web-app id="/" root-directory="D:\workspace\workspace_web\struts1\src\main\webapp"/> 其实也就是要指定对应web应用的根目录。

  同时你需要确保,能找到app-default.xml,需要将他的位置改为绝对路径,修改后为:<resin:import path="D:/App/resin-3.1.12/conf/app-default.xml"/>

  完整的conf文件如下

<!--
   - Alternative to resin.conf, minimal configuration for starting server.
   -
   - unix> java -jar lib/resin.conf -server-root /var/www -conf conf/minimal.conf
   -
   - Server root is /var/www, documents are in /var/www/docs.
  -->

<resin xmlns="http://caucho.com/ns/resin"
       xmlns:resin="http://caucho.com/ns/resin/core">

  <log name="" level="info" path="stdout:"/>

  <cluster id="">
    <server id="">
      <http port="8080"/>
    </server>

    <resin:import path="D:/App/resin-3.1.12/conf/app-default.xml"/>

    <host id="" root-directory=".">
      <web-app id="/" root-directory="D:\workspace\workspace_web\struts1\src\main\webapp"/>
    </host>
  </cluster>
</resin>

  另外如果想在eclispe中使用resin进行调试,可以在debug configuration中新建一个java application

  1.工程一定要选择你的maven工程,main class为com.caucho.server.resin.Resin

  2.program arguments 内写-conf "D:\app\resin-3.1.12\conf\minimal.conf" 指向你修改后的.conf文件;

     vm arguments 填 -Djava.util.logging.manager=com.caucho.log.LogManagerImpl 

  3.classpath内选择add external jars 添加resin lib下的全部jar 以及jdk lib下的tools.jar;user entries内一定要添加你的maven工程

  主要就这些了,可参考http://blog.csdn.net/sz_bdqn/article/details/7488221,我一开始参考这个做的,死活跑不了,只好自己不断尝试。

struts1

  struts1其实没啥好讲的,找个例子对着做,不理解的地方自己再琢磨下就行。

我遇到了两个问题  

  1.      Caused by: java.lang.NullPointerException
       at org.apache.struts.config.FormBeanConfig.createActionForm(FormBeanConfig.java:289)

     我实现的ActionForm类找不到,网上说是form-bean标签中的type写错了,导致找不到,我的不是。我的是因为在debug configuration-》classpath-》user entries中没有把工程添加进去,导致找不到类。另外我发现如果你不编译maven工程直接运行maven程序的话,也会出现这种问题。

  2.     我复写的Action进不去,出现空白页面。我明明是继承的org.apache.struts.action.Action类啊,配置也没问题。

      后来才发现我复写的方法是

public ActionForward execute(ActionMapping mapping, ActionForm form,ServletRequest request, ServletResponse response)       throws Exception

     应该复写

public ActionForward execute(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response)     throws Exception

  struts1技术可参考(技术点很全,但是代码只有一部分):http://www.ibm.com/developerworks/cn/java/l-struts1-1/

  struts入门实例可参考:http://blog.csdn.net/lanpiao_87/article/details/7451784

  

时间: 2024-10-11 03:32:05

基于maven搭建的struts 1 java工程的相关文章

基于Maven搭建SpringMVC+Mybatis项目(4)

从高考,到程序员      CSDN日报20170620--<找一个好工作,谈一份好薪水>      6 月书讯 | 最受欢迎的 SQL 入门书重磅升级 从头开始基于Maven搭建SpringMVC+Mybatis项目(4) 标签:               mavenmybatisspring mvc分页JAVA 2016-07-27 16:53             4598人阅读             评论(0)             收藏              举报 本文章

基于Maven搭建SpringMVC+Mybatis项目(2)

从头开始基于Maven搭建SpringMVC+Mybatis项目(2) 标签:               JAVAmavenmybatisspring mvc 版权声明:欢迎转载, 转载请保留原文链接. 接上文内容,本节介绍Maven的聚合和继承. 从头阅读传送门 互联网时代,软件正在变得越来越复杂,开发人员通常会对软件划分模块,以获得清晰的设计.良好的分工及更高的可重用性.Maven的聚合特性能把多个模块聚合在一起构建,并促进各子模块通过继承父模块的pom配置来保持配置的一致.为了演示这些特

基于Maven搭建SpringMVC+Mybatis项目(3)

| 从高考,到程序员      CSDN日报20170620--<找一个好工作,谈一份好薪水>      6 月书讯 | 最受欢迎的 SQL 入门书重磅升级 从头开始基于Maven搭建SpringMVC+Mybatis项目(3) 标签:               JAVAmavenspring mvcmybatis 2016-07-26 10:06             42087人阅读             评论(2)             收藏              举报 本文

使用Maven构建一个简单的java工程

原文是我在学习Spring的过程中,在Spring的官网上看到的一个指南:BuildingJava Projects with Maven--http://spring.io/guides/gs/maven/#scratch.我也是刚接触Maven.看到这篇文章觉得非常简单,但又非常实用,尤其是对于像我这样的Maven初学者.基本上看了这篇后能大概知道Maven是个什么东西,干点什么事,并能够上手使用Maven做点小例子.所以忍不住就把它整理成中文,发出来分享一下,帮助初学者.并没有对原文完整翻

基于maven搭建hibernate运行环境

准备案例需要的数据库表和测试数据 建表语句: create table DEPARTMENT ( DEPT_ID integer not null, DEPT_NAME varchar(255) not null, DEPT_NO varchar(20) not null, LOCATION varchar(255), primary key (DEPT_ID), unique (DEPT_NO) ); create table EMPLOYEE ( EMP_ID bigint not null

从头开始基于Maven搭建SpringMVC+Mybatis项目(1)

技术发展日新月异,许多曾经拥有霸主地位的流行技术短短几年间已被新兴技术所取代. 在Java的世界中,框架之争可能比语言本身的改变更让人关注.近几年,SpringMVC凭借简单轻便.开发效率高.与Spring框架无缝整合等特点,逐渐击败前辈Struts/Struts2,成为最常用的Web框架.而Mybatis相对于Hibernate,同样具有开发简单.效率高的优势,而且对SQL的可控性更好,有利于性能调优,逐渐也积累了挑战Hibernate的实力和人气. 当前SpringMVC+Mybatis已经

ActiveMQ JMS 项目 基于 Maven 搭建

JAVA版本: IntellJ IDEA 版本: IntelliJ IDEA 2017.2Build #IU-172.3317.76, built on July 15, 2017Licensed to Administrator JRE: 1.8.0_152-release-915-b5 amd64JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.oWindows 7 6.1 一.新建Maven工程 1.选择File => New => Proje

从头开始基于Maven搭建SpringMVC+Mybatis项目(2)

接上文内容,本节介绍Maven的聚合和继承. 从头阅读传送门 互联网时代,软件正在变得越来越复杂,开发人员通常会对软件划分模块,以获得清晰的设计.良好的分工及更高的可重用性.Maven的聚合特性能把多个模块聚合在一起构建,并促进各子模块通过继承父模块的pom配置来保持配置的一致.为了演示这些特性,本文的示例划分为数据持久层petstore-persist和petstore-web两个模块. 下面来介绍创建项目的过程,首先创建父模块perstore-parent. File -> New ->

初学springboot, 如何快速使用maven搭建springboot项目呢

搭建Springboot 推荐使用maven, 但也可以不使用maven,用正常的java工程. 在MyEclipse上新建一个maven工程 点击Next,选择create a simple project 点击Next,输入下图所示 点击finish,稍等一下会,项目就构建完成.目录结构如下所示: 上图中的pom.xml提示错误,点开pom.xml,切换至:Dependencies视图,点击红色错误,弹出提示框,点击+号.完成后pom.xml将不会报错. pom.xml增加继承父包 <!--