- 浏览: 258035 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
jeans_1312:
...
JAVA检测字符串编码并转换 -
zenzuguo:
为啥我在eclipse tomcat6.0启动时总报错
Ma ...
appfuse2.0.2在eclipse下的开发和使用 -
josewu2009:
楼主我用你的方法在window机器 上 压缩后 ,解压文件时报 ...
java压缩文件夹下的所有文件和选定文件及乱码解决 -
TonyLian:
我觉得2楼提出的,只不过是看起来更漂亮而已,原写法也不会出现B ...
Ibatis动态查询例子(#和$以及iterate等的用法) -
zhaoshg:
谢谢 lemonweirui 的更正,帮我发现了一个bug,谢 ...
Ibatis动态查询例子(#和$以及iterate等的用法)
1.准备工作
包括JDK 5+、MySQL 5.x和Maven 2.1.0。Maven的环境变量配置:新建变量名为“M2_HOME”,路经为Maven根目录的环境变量,然后在Path中添加“;%M2_HOME%\bin”。如果你不想在线下载工程的依赖包,可以到appfuse-dependencies-2.0.2.zip下载,然后解压,并且将maven目录下conf文件夹下的settings.xml的localRepository变量设置为你刚刚解压的路径如C:\Docume~1\%username%\.m2\repository
2. 创建工程
接下来我们习惯性的想要去寻找AppFuse的工程源码,其实这个完全没有必要,Maven全部为我们代劳了。当然前提条件是你的机器必须能够上网。
因为我一直使用的都是struts+spring+ibatis的框架,所以接下来就是构建这个工程了。
进入命令行窗口,转到想要存放工程的路径下,输入
mvn archetype:create -DarchetypeGroupId=org.appfuse.archetypes -DarchetypeArtifactId=appfuse-basic-struts -DremoteRepositories=http://static.appfuse.org/releases -DarchetypeVersion=2.0.1 -DgroupId=com.mycompany.app -DartifactId=myproject
其中的-DgroupId和-DartifactId可以修改为自己想要的包名和工程名。如果你下载了上面的依赖包的话,"-DremoteRepositories=http://static.appfuse.org/releases "这个就不用加了
使用其它框架的可以到http://appfuse.org/display/APF/AppFuse+QuickStart查找相应的命令。
命令执行完,显示BUILD SUCCESSFUL后,进行下一步。
3.配置数据库
打开工程根目录下的pom.xml,找到最后一个<jdbc.username>和<jdbc.password>,即MySQL的配置项,把用户名和密码修改为自己MySQL的配置。AppFuse默认root用户的密码为空,如果你的数据库是这样设置的,当然就不用改了。
4. 因为appfuse默认的是hibernate,所以要修改为ibatis工程(修改pom.xml)
①删掉文件中的**/hibernate.cfg.xml
②把这个<artifactId>appfuse-hibernate</artifactId>改成<artifactId>appfuse-ibatis</artifactId>
③<dao.framework>hibernate</dao.framework>改为<dao.framework>ibatis</dao.framework>
④在<properties></properties>中加上<ibatis.version>2.3.4.726</ibatis.version>
5.运行工程
在命令行进入工程根目录,运行mvn,Maven开始下载jar包、Tomcat和运行集成测试。这一工作需要的时间还是挺长的,我的机器运行了半小时以上,所以你可以先去干点别的。如果你有了第一步的依赖包,就会节省很多时间.
接下来有可能会提示没有mysql-schema.sql文件,所以你建一个空的就可以了,再次运行mvn
接下来运行mvn jetty:run-war,Maven开始打包、发布程序,并启动Jetty,运行完成后,你就可以通过http://localhost:8080,使用admin/admin或者user/user登录,浏览这个web应用了。
从表面看,除了样式,功能没有多少变化。
5.开发工程
到现在的阶段还看不到工程源码,接下来运行mvn appfuse:full-source,如果你的操作系统是Windows,会有一个Ant1.7.0的bug而导致构建失败,解决办法要么下载Ant1.7.1(似乎目前还未发布),要么是在C:\Documents and Settings\%username%\.m2下建立一个settings.xml文件(其中username是你当前进入系统的用户名),内容是
<?xml version="1.0" encoding="UTF-8"?>
<settings>
<localRepository>C:\Docume~1\%username%\.m2\repository</localRepository>
</settings>
重新运行mvn appfuse:full-source,工程源码就下载到工程目录下了。
其实这个路径C:\Docume~1\%username%\.m2\repository就是第一步你的依赖包解压位置,如果你已经在maven的settings文件配置了的话,这个settings.xml可以不用了
运行mvn install eclipse:eclipse,生成eclipse项目文件,这一过程也需要半小时左右。然后使用Eclipse打开它,可以欣赏最新的AppFuse源码了。如果你是下载并配置了appfuse-dependencies-2.0.2.zip,可以使用这个命令mvn clean eclipse:eclipse -o,就省略了下载jar的过程.
接下来还有一个问题,eclipse找不到jar包,源码里全是红叉。打开Java Build Path,发现有大量引用M2_REPO,大概eclipse不知道这个文件夹在哪里。添加一个变量,名字M2_REPO,路径指到C:\Docume~1\%username%\.m2\repository,确定后系统提示要重新编译,之后大部分红叉都会消失了。
以下的附件是我的pom.xml文件,这个可以根据自己的需要定制的.
- pom.rar (4.4 KB)
- 下载次数: 82
评论
May 10, 2012 2:22:56 PM org.apache.catalina.core.StandardContext listenerStart
SEVERE: Exception sending context initialized event to listener instance of class com.testapp.webapp.listener.StartupListener
java.lang.IllegalArgumentException: Failed to find mapping for class [com.testapp.model.Role]
at org.compass.gps.device.ibatis.SqlMapClientGpsDevice.doGetIndexEntities(SqlMapClientGpsDevice.java:122)
at org.compass.gps.device.support.parallel.AbstractParallelGpsDevice.index(AbstractParallelGpsDevice.java:89)
at org.compass.gps.impl.DefaultReplaceIndexCallback.buildIndexIfNeeded(DefaultReplaceIndexCallback.java:42)
at org.compass.core.lucene.engine.manager.DefaultLuceneSearchEngineIndexManager$ReplaceIndexOperationCallback.firstStep(DefaultLuceneSearchEngineIndexManager.java:281)
at org.compass.core.lucene.engine.manager.DefaultLuceneSearchEngineIndexManager.doOperate(DefaultLuceneSearchEngineIndexManager.java:218)
at org.compass.core.lucene.engine.manager.DefaultLuceneSearchEngineIndexManager.doReplaceIndex(DefaultLuceneSearchEngineIndexManager.java:266)
at org.compass.core.lucene.engine.manager.DefaultLuceneSearchEngineIndexManager.replaceIndex(DefaultLuceneSearchEngineIndexManager.java:261)
at org.compass.gps.impl.SingleCompassGps.doIndex(SingleCompassGps.java:118)
at org.compass.gps.impl.AbstractCompassGps.index(AbstractCompassGps.java:154)
at org.compass.gps.impl.AbstractCompassGps.index(AbstractCompassGps.java:128)
at com.testapp.webapp.listener.StartupListener.setupContext(StartupListener.java:110)
at com.testapp.webapp.listener.StartupListener.contextInitialized(StartupListener.java:93)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4206)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4705)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:840)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
at org.apache.catalina.core.StandardService.start(StandardService.java:525)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)
at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
May 10, 2012 2:22:56 PM org.apache.catalina.core.StandardContext start
SEVERE: Error listenerStart
发表评论
-
使用AppFuse框架进行开发的总结
2009-04-19 23:53 1103AppFuse是一个集成了当前 ... -
AppFuse的SiteMesh
2009-04-19 23:53 1214AppFuse中使用SiteMesh,怎样设置SiteMesh ... -
用appfuse2.0生成一个单独的模块
2009-04-19 23:51 1485使用 AppFuse2.0,你需要对 maven有一些基本的了 ... -
Appfuse里面带的Ant任务列表
2009-04-19 23:46 990任务名 说明 bin ... -
appfuse配置文件解读
2009-04-19 23:46 895● AppFuse的ant构建使用 ... -
appfuse结合eclipse开发流程
2009-04-19 23:44 1499Appfuse应用的核心在于ant ... -
APPFUSE2使用说明及常见问题解决方法
2009-04-19 23:40 1366APPFUSE2使用说明及常见 ... -
AppFuse 2.0研究(一)
2009-04-19 23:23 1248新版本的AppFuse虽然实现的功能没有变,但实现方式的变化还 ... -
AppFuse 2.0初体验
2009-04-19 23:21 1054AppFuse2的网站已经变成 ... -
AppFuse1.9.1
2009-04-19 23:18 973刚下载了新版看了一下,和1.8相比改动了不少地方: 最直观 ... -
修改AppFuse
2009-04-19 23:18 1089用AppFuse有一段时间了, ... -
AppFuse学习笔记-单元测试
2009-04-19 23:17 1155AppFuse为几乎每一个类都 ... -
AppFuse学习笔记-视图层
2009-04-19 23:16 11601. 程序描述 视图层主要由JSP网页构成,此外还包括 ... -
AppFuse学习笔记-模型层
2009-04-19 22:34 11543.3 模型层结构 Model层为整个系统的核心部分, ... -
AppFuse学习笔记-控制层
2009-04-19 22:14 10681. 我们先详细介绍一下S ... -
AppFuse学习笔记-组件和工具
2009-04-19 22:12 1109使用大量的第三方 ... -
AppFuse学习笔记-框架总揽
2009-04-19 22:09 983安装好了系统,我先来 ... -
AppFuse学习笔记-简介
2009-04-19 22:08 1273一、简介 AppFuse是当今大师级人物Matt R ...
相关推荐
描述:AppFuse 2.0.2文档,PDF格式,详细介绍了AppFuse的应用、特性和如何利用它加速Web应用的开发过程。 AppFuse是一款用于“快速启动”Web应用开发的开源框架,特别适用于那些希望在短时间内构建高质量Web应用的...
这个版本的文档很可能是关于如何使用AppFuse 2.0.2,包括其特性和安装指南,以及如何构建基于它的应用。 描述中提到的"NULL"意味着没有额外的详细信息,但我们可以通过博文链接...
appfuse2.0.2 Struts2 hibernate Spring 构建的基于SQLServer2005 的ssh2项目的过程全记录 网上很多帖子介绍appfuse2构建过程的,但是基于SQLServer2005的没有,顶多一笔带过,另外对于期间出现的各种问题也没有个说明,...
主要是自己从网络上搜集的一些关于appfuse1.8.2-2.0.2的一些相关资料,间或有点自己试验的记录,还有点maven和quartz的东东,之前我主要是用1.8.2构建项目,感觉还不错,希望对想学习appfuse的人有些帮助.
然后,你可以使用IDE(如IntelliJ IDEA或Eclipse)导入这个项目,或者通过Maven的命令行工具运行`mvn jetty:run`来启动一个内置的Jetty服务器,以便于测试和调试应用。如果一切配置正确,你将能在浏览器中看到...
已经调试好的ibatis版appfuse eclipse工程。帮助学习appfuse。表结构 和hibernate的相同。
### AppFuse开发框架(myapp)使用说明文档 #### 一、配置开发环境 AppFuse是一个开源的Java Web应用开发框架,旨在提供一个快速的应用程序开发基础。为了更好地使用AppFuse框架进行开发,以下是对开发环境配置的...
AppFuse是一个集成了众多当前最流行开源框架与工具(包括Hibernate、ibatis、Struts、Spring、DBUnit、Maven、Log4J、Struts Menu、Xdoclet、SiteMesh、OSCache、JUnit、JSTL等(现在还有lucene的,无敌了))于一身的...
- Eclipse是广泛使用的Java集成开发环境,用于AppFuse项目的开发和调试。 **7. 创建新项目** - 在命令行中进入AppFuse解压目录,并执行`ant new`命令。 - 根据提示输入项目名称(默认`myapp`)、数据库名称(默认`...
Appfuse 是一个开源项目,它提供了一种快速开发Web应用程序的方式,尤其在使用Java技术栈时。本教程将深入探讨如何利用Appfuse创建数据访问对象(DAO)和简单Java对象(POJO),并进行数据库操作。 **一、在APPFUSE...
它使用了多种流行的技术栈,如 Spring Boot、Hibernate、Thymeleaf 和 Maven,使得开发者可以更高效地开发基于 Java 的 Web 应用。在本文中,我们将深入了解如何安装并部署 AppFuse 项目。 **1. 预备知识** 在开始...
在最新的版本2.1.0-M2中,AppFuse 提供了基本(basic)和模块化(modular)两种类型的原型,以便于开发者根据项目需求选择合适的方式来创建项目。 建立项目原型骨架的步骤如下: 1. 首先,通过Maven的archetype...
1. **集成流行框架**:Appfuse 将 Hibernate、Struts、Spring 等框架进行了深度集成,为开发者提供了一个统一的开发平台,降低了学习和使用这些框架的门槛。 2. **提供常用功能**:框架内已经预设了如用户认证、角色...
### AppFuse:加速J2EE项目开发 #### 一、简介与背景 AppFuse是一个用于启动J2EE项目的工具包,它提供了一种快速而简便的方法来构建基于Java的应用程序。该工具包由Matt Raible创建,他在网络开发领域拥有丰富的...
在提供的压缩包中,"基于appfuse开发网站.doc"很可能是详细的开发指南,涵盖了AppFuse的使用方法、配置步骤以及常见问题。"CertsManSys"可能是一个实际的AppFuse应用示例,包含了完整的源代码,你可以运行这个例子来...
AppFuse 2.0还更新了技术栈,支持JDK 5、注解、JSP 2.0和Servlet 2.4,同时提供了对Eclipse、IntelliJ IDEA和NetBeans等IDE的良好支持,以提高开发效率。 此外,AppFuse 2.0集成了多种开源项目,如: 1. **Struts ...
综上所述,AppFuse 2.0 RC1文档是一个全面的资源集合,不仅提供了AppFuse的基础使用教程,还深入探讨了高级主题,如安全性、持续集成和多框架集成,是Web开发人员学习和掌握AppFuse不可或缺的指南。
通过阅读教程,你将学会如何配置和使用Appfuse,创建自己的项目,以及如何扩展和定制框架以满足具体项目需求。这是一条通往高效开发的道路,对于想在Java Web领域深入学习的开发者来说,是一份宝贵的资源。