`
badqiu
  • 浏览: 676319 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论

rapid-framework发布新版本: v3.5

阅读更多

本次的主要更新内容是重新拾起flex,重整了flex插件. 而spring3.0.2及ibatis3正式版一直未发布,只能先发布rapid v3.5以后再更新进来,感谢一直支持rapid的同学.

v3.5更新内容:

  • 扩展jsp,freemarker,velocity的模板可以相互继承,打造替换sitemesh,struts tiles的布局框架.
  • freemarker,velocity实现管道操作来进行布局
  • 新增分页方言: SQLServer2005Dialect
  • spring事务配置采用@Transactional替换xml配置
  • jdbc增加了sql生成工具,用于进一步封装spring jdbc操作

新增插件:
flex_cairngorm:  基于cairngorm mvc的flex插件,代码生成器生成的在线demo
freemarker_html_view: 基于freemarker的html视图,用于不喜欢jsp的同学使用

 

文档:
通过工具http://code.google.com/p/google-code-wiki-to-html/
现rapid压缩包自带离线wiki文档,当然你也可以在线浏览


新的子项目:
flex-security: flex UI组件权限控制框架

 

其它修改:
目录结构进行调整.

rapid-framework框架介绍

rapid-framework是一个以spring为核心的项目脚手架(或者称为胶水框架),框架将各个零散的框架(struts,strust2,springmvc,hibernate,ibatis,spring_jdbc,flex)搭建好,并内置一个代码生成器,辅助项目开发,可以生成java的hibernat model,dao,manager,struts+struts2 action类,可以生成jsp的增删改查及列表页面

框架概览

  • Dao: spring_jdbc, hibernate, ibatis2, ibatis3, 可以切换dao组件
  • Dao Helper: 基于dialect的分页(ibatis2, ibatis3, jdbc),动态sql构造工具rapid-xsqlbuilder
  • Web MVC: struts1, struts2, springmvc, springmvc_rest, 可以切换web组件
  • Template: (velocity, freemarker, jsp)的模板可以相互继承, velocity及freemarker可以实现模板之间的管道操作
  • 分页组件: extremeTable, rapid-simpletable
  • UI: rapid-validation表单验证, My97DatePicker?日期控件
  • 单元测试: spring test+DBunit
  • 底层支撑: 插件体系及代码生成器(rapid-generator)

 项目下载:
http://code.google.com/p/rapid-framework/downloads/list

 

项目HOME:
http://www.rapid-framework.org.cn/

 

文档:
http://code.google.com/p/rapid-framework/wiki/menu

分享到:
评论
8 楼 hcjhuanghe 2010-04-14  
补充一下,是点击extjs表格的标题排序的时候报的错
7 楼 hcjhuanghe 2010-04-14  
您好,rapidframework3.0.1 结合extjs使用的时候报错,请指教:
2010-04-14 14:55:41,029 WARN [net.sf.json.JSONObject] - <Property 'handler' of class com.tscms.model.CoreFunction_$$_javassist_16 has no read method. SKIPPED>
2010-04-14 14:55:41,029 WARN [net.sf.json.JSONObject] - <Property 'transactionTimeout' of class org.hibernate.jdbc.BatchingBatcher has no read method. SKIPPED>
2010-04-14 14:55:41,044 WARN [net.sf.json.JSONObject] - <Property 'URL' of class com.mysql.jdbc.ResultSet has no read method. SKIPPED>
2010-04-14 14:55:41,044 WARN [net.sf.json.JSONObject] - <Property 'array' of class com.mysql.jdbc.ResultSet has no read method. SKIPPED>
2010-04-14 14:55:41,044 WARN [net.sf.json.JSONObject] - <Property 'asciiStream' of class com.mysql.jdbc.ResultSet has no read method. SKIPPED>
2010-04-14 14:55:41,044 WARN [net.sf.json.JSONObject] - <Property 'bigDecimal' of class com.mysql.jdbc.ResultSet has no read method. SKIPPED>
2010-04-14 14:55:41,044 WARN [net.sf.json.JSONObject] - <Property 'binaryStream' of class com.mysql.jdbc.ResultSet has no read method. SKIPPED>
2010-04-14 14:55:41,044 WARN [net.sf.json.JSONObject] - <Property 'blob' of class com.mysql.jdbc.ResultSet has no read method. SKIPPED>
2010-04-14 14:55:41,044 WARN [net.sf.json.JSONObject] - <Property 'boolean' of class com.mysql.jdbc.ResultSet has no read method. SKIPPED>
2010-04-14 14:55:41,044 WARN [net.sf.json.JSONObject] - <Property 'byte' of class com.mysql.jdbc.ResultSet has no read method. SKIPPED>
2010-04-14 14:55:41,044 WARN [net.sf.json.JSONObject] - <Property 'bytes' of class com.mysql.jdbc.ResultSet has no read method. SKIPPED>
2010-04-14 14:55:41,044 WARN [net.sf.json.JSONObject] - <Property 'characterStream' of class com.mysql.jdbc.ResultSet has no read method. SKIPPED>
2010-04-14 14:55:41,044 WARN [net.sf.json.JSONObject] - <Property 'clob' of class com.mysql.jdbc.ResultSet has no read method. SKIPPED>
2010-04-14 14:55:41,060 ERROR [freemarker.runtime] - <>

Method public java.lang.String org.apache.commons.lang.exception.NestableRuntimeException.getMessage(int) threw an exception when invoked on net.sf.json.JSONException: java.lang.reflect.InvocationTargetException
The problematic instruction:
----------
==> ${msg[0]} [on line 68, column 29 in org/apache/struts2/dispatcher/error.ftl]
----------

Java backtrace for programmers:
----------
freemarker.template.TemplateModelException: Method public java.lang.String org.apache.commons.lang.exception.NestableRuntimeException.getMessage(int) threw an exception when invoked on net.sf.json.JSONException: java.lang.reflect.InvocationTargetException
	at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:130)
	at freemarker.ext.beans.SimpleMethodModel.get(SimpleMethodModel.java:138)
	at freemarker.core.DynamicKeyName.dealWithNumericalKey(DynamicKeyName.java:111)
	at freemarker.core.DynamicKeyName._getAsTemplateModel(DynamicKeyName.java:90)
	at freemarker.core.Expression.getAsTemplateModel(Expression.java:89)
	at freemarker.core.Expression.getStringValue(Expression.java:93)
	at freemarker.core.DollarVariable.accept(DollarVariable.java:76)
	at freemarker.core.Environment.visit(Environment.java:208)
	at freemarker.core.MixedContent.accept(MixedContent.java:92)
	at freemarker.core.Environment.visit(Environment.java:208)
	at freemarker.core.IfBlock.accept(IfBlock.java:82)
	at freemarker.core.Environment.visit(Environment.java:208)
	at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:179)
	at freemarker.core.Environment.visit(Environment.java:415)
	at freemarker.core.IteratorBlock.accept(IteratorBlock.java:102)
	at freemarker.core.Environment.visit(Environment.java:208)
	at freemarker.core.MixedContent.accept(MixedContent.java:92)
	at freemarker.core.Environment.visit(Environment.java:208)
	at freemarker.core.IfBlock.accept(IfBlock.java:82)
	at freemarker.core.Environment.visit(Environment.java:208)
	at freemarker.core.MixedContent.accept(MixedContent.java:92)
	at freemarker.core.Environment.visit(Environment.java:208)
	at freemarker.core.Environment.process(Environment.java:188)
	at freemarker.template.Template.process(Template.java:237)
	at org.apache.struts2.dispatcher.Dispatcher.sendError(Dispatcher.java:748)
	at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:505)
	at org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:395)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.struts2.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:102)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:568)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
	at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NullPointerException
	at freemarker.ext.beans.SimpleMemberModel.unwrapArguments(SimpleMemberModel.java:85)
	at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:106)
	... 46 more
2010-4-14 14:55:41 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet default threw exception
java.lang.IllegalStateException
	at org.apache.catalina.connector.ResponseFacade.sendError(ResponseFacade.java:407)
	at org.apache.struts2.dispatcher.Dispatcher.sendError(Dispatcher.java:752)
	at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:505)
	at org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:395)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.struts2.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:102)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:568)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
	at java.lang.Thread.run(Unknown Source)

6 楼 chpublish1012 2010-04-13  
拜读了你写的代码生成器
很不错,提点小意见,能不能把注释补一补呀,看的比较累,参数名字不是很直观,能不能把每个参数的意义写出来。
项目中有个地方用到了你对freemarker的封装,正在改造,希望下个版本能看到你在类里的注释说明。
5 楼 hypgr 2010-03-30  
有空要好好看看这个项目
4 楼 badqiu 2010-03-27  
这个你也自己搜索一下: NoClassDefFoundError: com/sun/activation/registries/LogSupport

同学,要善于自己解决问题.

下面这个方法是搜到的:
http://blog.csdn.net/gxf36/archive/2009/11/04/4765643.aspx
3 楼 liuwg 2010-03-25  
谢谢,badqiu的提示.还有一个问题,就是rapid_mailer v3.0 插件,用你本身带的测试类无法junit单元测试
异常为:
下面junit测试时导出的控件台日志
<?xml version="1.0" encoding="UTF-8" ?> 
- <testrun name="OrderMailerTest" project="EXAM" tests="1" started="1" failures="0" errors="1" ignored="0">
- <testsuite name="com.demo.mailer.OrderMailerTest">
- <testcase name="testSendFromOrderMailer" classname="com.demo.mailer.OrderMailerTest">
  <error>org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'javaMailSender' defined in class path resource [spring/applicationContext-mail.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.springframework.mail.javamail.JavaMailSenderImpl]: Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: com/sun/activation/registries/LogSupport at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:946) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:892) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:479) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:450) at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:290) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:287) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:189) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:562) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:871) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:423) at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139) at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:83) at com.demo.mailer.OrderMailerTest.setUp(OrderMailerTest.java:29) at junit.framework.TestCase.runBare(TestCase.java:132) at junit.framework.TestResult$1.protect(TestResult.java:110) at junit.framework.TestResult.runProtected(TestResult.java:128) at junit.framework.TestResult.run(TestResult.java:113) at junit.framework.TestCase.run(TestCase.java:124) at junit.framework.TestSuite.runTest(TestSuite.java:232) at junit.framework.TestSuite.run(TestSuite.java:227) at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:83) at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:38) at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196) Caused by: org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.springframework.mail.javamail.JavaMailSenderImpl]: Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: com/sun/activation/registries/LogSupport at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:141) at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:72) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:939) ... 27 more Caused by: java.lang.NoClassDefFoundError: com/sun/activation/registries/LogSupport at javax.activation.MimetypesFileTypeMap.<init>(MimetypesFileTypeMap.java:90) at javax.activation.MimetypesFileTypeMap.<init>(MimetypesFileTypeMap.java:264) at org.springframework.mail.javamail.ConfigurableMimeFileTypeMap.createFileTypeMap(ConfigurableMimeFileTypeMap.java:146) at org.springframework.mail.javamail.ConfigurableMimeFileTypeMap.getFileTypeMap(ConfigurableMimeFileTypeMap.java:118) at org.springframework.mail.javamail.ConfigurableMimeFileTypeMap.afterPropertiesSet(ConfigurableMimeFileTypeMap.java:105) at org.springframework.mail.javamail.JavaMailSenderImpl.<init>(JavaMailSenderImpl.java:107) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) at java.lang.reflect.Constructor.newInstance(Unknown Source) at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:126) ... 29 more</error> 
  </testcase>
  </testsuite>
  </testrun>
2 楼 badqiu 2010-03-23  
这个你修改tomcat的配置文件就行了. 网上自己搜索
1 楼 liuwg 2010-03-23  
badqiu,你好.我使用spring mvc reset 时,查询时中文是乱码(只持get且不支持post,用post 会增加一条记录),请问badqiu还有解决的办法.我邮箱是liuwgcom@gmail.com

相关推荐

Global site tag (gtag.js) - Google Analytics