小编bal*_*ker的帖子

JPA/Hibernate - 不期望的部分回滚和会话处理

我正在使用无状态EJB类来更新位于数据库中的持久性实体.EJB中的方法调用完成工作的实现类.我认为造成这个问题的原因是一个被称为Foo实体的实体与一个实体有一个关系Bar.事情已经完成,会话将更新为Foo"级联" Bar.StaleObjectStateException发生a 时,事务未完全回滚,这导致错误,原因很明显.

EJB:

private Session getSession() throws BusinessException {

    if( this.sess == null ) {
            ServiceLocator locator = new ServiceLocator();
            SessionFactory sf = locator.getHibernateSessionFactory();
            this.sess = sf.openSession();
    }
    return this.sess;

}

private ProductionOrderImpl getImpl() throws BusinessException {

    if( this.impl == null ) {
        this.impl = new ProductionOrderImpl( getSession() );
    }
    return this.impl;

}

public void cutoffOrders(  ) throws Exception {

    Transaction tx = null;
    try {
        tx = getSession().beginTransaction(); …
Run Code Online (Sandbox Code Playgroud)

java hibernate jpa transactions

18
推荐指数
1
解决办法
2266
查看次数

JNLP扩展无法在Internet Explorer中打开

我有一个使用Internet Explorer打开*.jnlp扩展的问题.该扩展程序在Chrome和Firefox中正常打开,让我相信它是IE的问题,可能还有 Web服务器/ JNLP配置.具体来说,Internet Explorer将*.jnlp文件作为*.xml脚本打开,而不是下载文件或使用java web start打开它.

例:

<?xml version="1.0" encoding="utf-8" ?>
- <!--
 JNLP File for Downtime Registration Application
  -->
- <jnlp spec="1.7+" codebase="http://foo:8080/bar" href="bar.jnlp">
- <information>
  <title>FOO</title>
  <vendor>FOO Inc.</vendor>
  <description>FOO BAR System</description>
- <shortcut online="false">
  <desktop />
  <menu submenu="FOO" />
  </shortcut>
  </information>
- <security>
  <all-permissions />
  </security>
- <resources>
  <j2se version="1.7+" java-vm-args="-client" />

  ... 

  </resources>
  <application-desc main-class="FooBarMainApp" />
  </jnlp>
Run Code Online (Sandbox Code Playgroud)

我尝试了以下"修复"/解决方法无济于事:

  • 以管理员身份运行IE
  • 将URL添加到兼容性视图
  • 将JAVA设置更改为"始终允许JNLP/MIME"
  • 重置Internet Explorer高级设置
  • 更改Web服务器的web.xml文件中的MIME扩展设置
  • 将IE设置更改为始终允许文件下载

更新: 我能够通过下面发布的解决方法解决此问题.但是,如果有人有建议,我正在寻找更永久的解决方案.具体来说,我正在寻找一种方法来解决业务/服务器端的问题,如果可能的话.如果用户不需要更改他们的任何设置(其他然后从IE切换到不同的浏览器)将是很好的.

web.xml中的MIME映射:

  <mime-mapping>
    <extension>jnlp</extension>
    <mime-type>application/x-java-jnlp-file</mime-type>
</mime-mapping>
Run Code Online (Sandbox Code Playgroud)

java jnlp internet-explorer java-web-start

6
推荐指数
1
解决办法
3万
查看次数

按层次结构从许多字典中获取值

我有4本字典,我们称它们为:

dict1dict2dict3dict4

例:

dict1 = {'A': 1, 'B':2}
dict2 = {'A': 3, 'C':4}
dict3 = {'B': 5, 'D':6}
dict4 = {'A': 7, 'B':8, 'C': 9, 'D':10, 'E':11}
Run Code Online (Sandbox Code Playgroud)

每个词典级别都比后面的那些级别“强”。如,A发现dict1将是“更强大”比A中发现的dict2以优先的形式。是否有一个简短而优美的脚本来创建一个新字典,将其全部四个部分组装在一起,其中每个键都来自包含该键的“最强”词典?

结果应为: dict = {'A':1, 'B':2, 'C':4, 'D:6', 'E':11}

python dictionary python-2.7

5
推荐指数
1
解决办法
95
查看次数

如何清除JDateChooser字段?

我正在使用JDateChooser作为JForm中的组件。我已经设置了一个JButton,它将此表单上的所有字段重置为空白。我的actionListener或清除方法没有问题,但是不确定如何清除JDateChooser组件。

更具体地说,我想知道如何从日期选择器的JTextField组件中清除Date,以使其为空白。

此外,我想将此字段设置为清除后的当前日期。

java jdatechooser

2
推荐指数
1
解决办法
3万
查看次数