- 浏览: 287618 次
- 性别:
- 来自: 北京
最新评论
-
luchuanbaker:
经过测试,实际上,mybatis并没有此问题,我也碰到了这样的 ...
mybatis 异常不友好 举例 -
huang882088:
jboss的war发布到tomcat里报这个错误怎么办?
classloader常见问题总结 -
yourenyouyu2008:
大型,可持续扩展的系统适合使用静态语言。大型系统中的部分地方可 ...
Nuxeo公司探秘:从Python迁移到Java -
yourenyouyu2008:
既然Nuxeo同时使用了Pytho ...
Nuxeo公司探秘:从Python迁移到Java -
panshunchang:
还有一种可能,真的缺这个jar包,在tomcat lib目录下 ...
classloader常见问题总结
文章列表
maven问题记录
- 博客分类:
- 项目管理-maven
1)maven大大简化了classpath的配置,使得任何java工程的classpath文件都是一样的。
更正:profile对eclipse project起作用 但必须是默认的。
<activation> <activeByDefault>true</activeByDefault> </activation>
这样不用maven命令就能使用mavne依赖,比如testng使用maven依赖,把testng环境依赖的jar都放到classpath,而真正发布时不应该把这些testng依赖的jar发布,这时发布时使用 dev ...
今天上班一打开eclipse就报failed to create the java virtual machine错误,以前一直好好的,突然就坏了,上网查了一下基本上全是一样的解决办法,就是修改内存配置参数,试了几种都没有效果。
一同事告诉我可能是maven照成的问题,在eclipse.ini文件中增加java路径即可。确实管用,这是网上的能查到的办法中所没有的。
-vmD:/Dev/JDK1.6/bin/javaw.exe-startupplugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar--launcher.libraryplu ...
seam能很好地支持 页面(faceslet)、非ejb class,各种page.xml的热部署,完全动态支持这些内容的增加、修改,但不支持删除。其中页面(faceslet)的热部署是有facelets自己管理的,与seam无关。
基本的配置seam官方文档讲解的都很清楚了,这里再简单罗列一下。可以详细查看seam官方文档
1)在components.xml中设置<core:init debug="true">,debug="false"取消热部署
2)将class放到 WEB-INF/dev目录下,默认是放到WEB-INF/class ...
int long double big数据类型的选择原则
一次长对话访问中可以包括多个页面,每个页面只处理部分数据,但不保存到数据库,最后一起提交到数据库。
长对话可以很好地记录下各部操作的状态,但是默认情况下 flush-mode 是自动更新的,每次页面请求结束后就会更新到数据库里,如果要统一提交就必须更改flush-mode 为manual,让每次操作都不更新到数据库,最后在一起em.flush();
在页面配置(refBspgen222.page.xml)中指定manual方式
<page>
<begin-conversation join="true" flush-mode="ma ...
逻辑分离
<a4j:commandLink actionListener="#{trafficDocNoAssDemoAction.save}"
rendered="#{!trafficDocNoAssDemoAction.managed}">
<f:actionListener
同一namespace下的tag不能定义到多个文件中,不支持模块化
<facelet-taglib> <!-- all custom tag--> <namespace>http://www.acca.com/validator</namespace> <tag> <tag-name>formCodeRangeValidator2</tag-name> <validator> <validator-id>fo ...
问题
在测试和运行环境使用不同的事务配置,默认不需要指定事务(使用jta),测试时需要使用jpa 事务,这时就必须在components.xml中显示配置jpa事务,如果测试和运行时都使用同一components.xml,可以通过maven属性控制
transaction:entity-transaction组件的installed。
<transaction:entity-transaction entity-manager="#{entityManager}"
installed="${entity-transaction.installed}& ...
Hibernate中提供了两级Cache,第一级别的缓存是Session级别的缓存,它是属于事务范围的缓存(一般情况下是
线程范围)。这一级别的缓存由hibernate管理的,一般情况下无需进行干预;
第二级别的缓存是SessionFactory级别的缓存(全 ...
下面的类是所有实体(jpa entity)的父类,所有实体的比较都有该类实现。
当使用延迟加载时会出现问题,延迟加载时比较的并不是实体本身,而是实体的拦截实例,他是实体的子类,
other.id并没有值,正常情况下是通过
other.getId()来访问id的,拦截实例会调用他包装的实体类的
getId()。
@ManyToOne(fetch=FetchType.LAZY)
@JoinColumn(name = "SERIESTYPE_SEQ")
private SeriesType seriesType;
public ab ...
开启长对话
有多种开启方式
1)在页面url中开启
<s:link view="/stock/trafficDocNoAss.xhtml" propagation="begin"
也可以直接在url增加conversationPropagation=begin参数
http://localhost:8080/NBSBase/stock/trafficDocNoAss.seam?conversationPropagation=begin
2)在***.page.xml中开启
trafficDocNoAss.page.xml
...
一般的servlet应用直接使用request\response,使用它们的默认行为,特殊情况下需要改变它们的默认行为,在很多框架级代码中广泛使用。servlet规范提供了HttpServletResponseWrapper HttpServletRequsetWrapper 包装类,定义它们的子类包装原始request或response,扩展它们的默认行为。
问题是如何让servlet容器使用自定义的包装类呢?
可以通过filter在请求开始前封装原始request或response,filter将包装类传递给后面的filter及servlet,jsp,这样它们就都使用到封装的re ...
1)常量
public final class Constants {
public static final int MAX_PAGE_ITEMS = 10;//分页用,每页显示的记录数
java基本类型常量(其他常量不清楚)是基于编译时的,使用常量的类编译时直接将常量的值设置进去,而不是常量的引用,这样当常量值改变后必须重新编译所有使用的类,否则还是使用老的值。
这种情况特别容易在常量在独立jar中出现。
加速你的Hibernate引擎(上)
http://www.infoq.com/cn/articles/hibernate_tuning
加速你的Hibernate引擎(下)
http://www.infoq.com/cn/articles/hibernate_tuning-ii
ThreadLocal在大量的框架级代码中被使用,比如seam、struts2等。
它主要是用来解决非静态(static)对象的静态使用。
为了方便的在任何地方使用变量,我们常将将变量设置为静态(static)的,这样就不用到处传递参数了,但是这 ...