小编boy*_*715的帖子

mappedBy引用未知的目标实体属性

我在注释对象中设置一对多关系时遇到问题.

我有以下内容:

@MappedSuperclass
public abstract class MappedModel
{
    @Id
    @GeneratedValue(strategy=GenerationType.AUTO)
    @Column(name="id",nullable=false,unique=true)
    private Long mId;
Run Code Online (Sandbox Code Playgroud)

那么这个

@Entity
@Table(name="customer")
public class Customer extends MappedModel implements Serializable
{

    /**
   * 
   */
  private static final long serialVersionUID = -2543425088717298236L;


  /** The collection of stores. */
    @OneToMany(mappedBy = "customer", cascade = CascadeType.ALL, fetch = FetchType.LAZY)
  private Collection<Store> stores;
Run Code Online (Sandbox Code Playgroud)

还有这个

@Entity
@Table(name="store")
public class Store extends MappedModel implements Serializable
{

    /**
   * 
   */
  private static final long serialVersionUID = -9017650847571487336L;

  /** many stores have a single …
Run Code Online (Sandbox Code Playgroud)

java orm hibernate hibernate-annotations

64
推荐指数
2
解决办法
9万
查看次数

JSF调整

遇到JSF填补我们会话的问题.前几天我们遇到了系统崩溃.发送堆给IBM进行审核,发现我们有一些大到50M的会话.他们在会话中发现了JSF组件,而且有些非常大.

那么,有没有可以完成的调整?配置项看看?或其他方向.

我们的系统是使用JSF和Spring为表示层构建的,后端是EJB,Spring和Hibernate都在WebSphere 6.1上运行.

java performance websphere jsf

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

Spring使用typeMismatch消息

我在网上和stackoverflow中做了一些搜索,看看如何处理我在其中一个屏幕上看到的以下消息:

无法将类型[java.lang.String]的属性值转换为属性'qtyToShip'的必需类型[java.lang.Long]; 嵌套异常是java.lang.IllegalArgumentException:无法解析数字:Unparseable number:"a"

通过研究和查看网页,我假设将以下内容添加到我的errors.properties文件中会产生所需的结果:

typeMismatch.shippingCommand.qtyToShip=1. Invalid value for Qty To Ship, accepts only numbers.  
typeMismatch.qtyToShip=2. Invalid value for Qty To Ship, accepts only numbers. 
shippingCommand.qtyToShip=3. Invalid value for Qty To Ship, accepts only numbers. 
qtyToShip=4. Invalid value for Qty To Ship, accepts only numbers.


typeMismatch.java.lang.NumberFormatException=5. Invalid value for {0}, accepts only numbers. 
typeMismatch.java.lang.Integer=Must specify an integer value. 
typeMismatch.java.lang.Long=Must specify an integer value. 
typeMismatch.java.lang.Float=Must specify a decimal value. 
typeMismatch.java.lang.Double=Must specify a decimal value.  
typeMismatch.int=Invalid number entered 
typeMismatch=Invalid type entered
Run Code Online (Sandbox Code Playgroud)

我在消息中添加整数值以确定哪一个会显示. …

data-binding spring-mvc

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

FindBugs的问题排除过滤器

我正在评估FindBugs并尝试使用excludeFilter,以便该工具不处理测试包或生成的ejb存根.

我尝试过以下方法:

<FindBugsFilter>
<!-- Match any test packages -->
<Match>
    <Package name="~.*\.test"/>
</Match>
<Match>
    <Or>
        <Class name="~.*\.^_*"/>
        <Class name="~.*EJS*"/>
    </Or>
    <Bug pattern="MALICIOUS_CODE"/>
</Match>
Run Code Online (Sandbox Code Playgroud)

生成的EJB仍然在被查看.有人可以为此提供更好的指导.

我想排除所有以"_"开头的类

例:

COM/myCompany中/业务/管理/ EJB/_AdminRemoteHome_Stub.java

COM/myCompany中/业务/管理/ EJB/_EJSRemoteStatelessAdminHome_054d51b9_Tie.java

更新过滤文件.

我使用建议的regx更改将过滤器文件更改为以下结构,现在事情按预期工作:

<FindBugsFilter>
<!-- Match any test packages -->
<Match>
    <Package name="~.*\.test"/>
</Match>
<Match>
    <Class name="~.*\._.*"/>
</Match>
<Match>
    <Class name="~.*?EJS.*"/>       
</Match>
Run Code Online (Sandbox Code Playgroud)

看起来我需要回去刷新我的regx.

java findbugs

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

非托管线程Spring Quartz Websphere Hibernate

看来我们使用Quartz-JDBCJobStore以及Spring,Hibernate和Websphere的实现抛出了非托管线程.

我做了一些阅读,发现了一篇来自IBM的技术文章,指出使用Quartz with Spring会导致这种情况.他们建议使用CommnonJ来解决这个问题.

我做了一些进一步的研究,到目前为止我见过的唯一例子都涉及不在数据库中的旧JobStore计划.

所以,我想知道是否有人有这个问题的解决方案的例子.

谢谢

java websphere spring hibernate quartz-scheduler

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

如何导出WAS 6.1服务器配置

有没有办法可以从WAS导出我的服务器设置(在RAD 6下运行),以便其他开发人员能够使用相同的脚本来设置他们的环境?

scripting configuration websphere-6.1

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

JSF会话管理和调优

所有,

我正在研究如何缩减我们的JSF应用程序在每个用户基础上消耗的会话内存量.

我们正在使用在IBM Websphere 7.0补丁19上运行的MyFaces 1.1.7和Tomahawk 1.1.5.(目前无法升级其中任何一项)

IBM的指导原则是会话大小应该小于5k - 平均大约2.5k,以免影响服务器和会话复制的性能.我们目前正在使用内存到内存,但正在考虑按照IBM的建议迁移到数据库.

我们的网站每个用户的运行速度约为35M.我们将视图状态的数量从100更改为10,并将其降低到大约4M.

我们有几个支持bean,它们当前是会话范围,并且正在考虑将它们更改为请求范围.

我还发现了以下内容:http: //www.econsulting.nl/images/pdf/Tuning%20JSF%20Applications-%20J-Spring%202008.pdf,它似乎有很多关于JSF如何处理某些内容的信息页面.目前仍在调查中以确保所述内容有意义.

我还读过一些地方,无论托管支持bean是会话还是请求范围,视图状态仍将具有bean及其内容.因此视图状态大小不会改变.寻求对此的澄清.

问题是其他人面临同样的问题,其中JSF应用程序往往为给定的用户会话消耗大量内存?

有什么减少这个大小的最佳实践,如果有的话,或者这只是使用JSF的方式?

运行JSF应用程序时IBM WebSphere上的会话复制问题?

有没有关于JSF/MyFaces如何利用堆内存的文档 - Young vs old还是应该在这个范围内考虑?垃圾收集调整?

我们看到的结果是,如果用户跳到另一台服务器,会话数据不会出现,因为数据有多大以及复制需要多长时间.用户体验问题.

我们已经看到一个问题,即会话中对象的更改似乎没有正确更新,并且已经完成了一些会话管理调优,我们在其中自定义设置以便写出所有会话属性.查看.jar​​文件时,当会话中对象的内容发生更改时,myFaces会正确地进行调用.因此,WebSphere会话侦听器应该接受该更改.

session websphere jsf myfaces

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

如何配置JBOSS 5.1.0 GA ClassLoader

我试图从我的应用程序加载libs而不是JBoss附带的问题时遇到了一些问题.

我试图在我的应用程序中使用最新和最好的SLF4J,并且这样做我收到以下消息:

SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [vfszip:/C:/devtools/workspace/g2/.metadata/.plugins/org.jboss.ide.eclipse.as.core/JBoss_5.1_Runtime_Server1302541739184/deploy/ecotrakEar.ear/ecotrak.war/WEB-INF/lib/slf4j-log4j12-1.6.1.jar/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [vfszip:/C:/devtools/jboss-5.1.0.GA/common/lib/slf4j-jboss-logging.jar/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
Run Code Online (Sandbox Code Playgroud)

在我的应用程序中,我在WAR lib目录中有以下jar:

  • 七月至SLF4J-1.6.1.jar
  • SLF4J-API-1.6.1.jar
  • SLF4J-log4j12-1.6.1.jar

我的项目部署为带有WAR的EAR.所有库都驻留在WAR中.

根据一些研究,有人建议为JBoss 5.1创建一个jboss-classloading.xml文件.我为我的EAR创建了一个:

<classloading xmlns="urn:jboss:classloading:1.0"
  name="ecotrak.ear"
  domain="ecotrak.ear"
  export-all="NON_EMPTY"
  import-all="true"
  parent-first="false">
</classloading>
Run Code Online (Sandbox Code Playgroud)

这标识了首先加载EAR文件.

我还为我的WAR创建了一个:

<classloading xmlns="urn:jboss:classloading:1.0"
  name="ecotrak.war"
  domain="ecotrak.war"
  parent-domain="ecotrak.ear"
  top-level-classloader="true"
  export-all="NON_EMPTY"
  import-all="true"
  parent-first="true">
</classloading>
Run Code Online (Sandbox Code Playgroud)

使用此配置,我在启动日志中收到以下错误:

11:18:07,949 ERROR [[/ecotrak]] Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener
java.lang.NoSuchMethodError: org.slf4j.spi.LocationAwareLogger.log(Lorg/slf4j/Marker;Ljava/lang/String;ILjava/lang/String;[Ljava/lang/Object;Ljava/lang/Throwable;)V
    at org.apache.commons.logging.impl.SLF4JLocationAwareLog.trace(SLF4JLocationAwareLog.java:107)
Run Code Online (Sandbox Code Playgroud)

在JBoss之前加载来自我项目的jar的正确方法是什么?

jboss classloader

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

使用@PreUpdate的问题

我有以下课程:

    @MappedSuperclass
public abstract class MappedModel
{
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "id", nullable = false, unique = true)
    private Long mId;

    @Temporal(TemporalType.TIMESTAMP)
    @Column(name = "rec_created_dtm", nullable = false, updatable = false)
    private Date recordCreatedDTM;

    @Column(name = "rec_cre_user_id", nullable = true, updatable = false)
    private Long recordCreatedUserId;

    @Temporal(TemporalType.TIMESTAMP)
    @Column(name = "last_update_dtm", nullable = false)
    private Date lastUpdateDTM;

    @Column(name = "last_update_user_id", nullable = true)
    private Long lastUpdateUserId;

//  @PrePersist
//  protected void onCreate()
//  {
//      this.lastUpdateDTM = this.recordCreatedDTM = …
Run Code Online (Sandbox Code Playgroud)

java annotations hibernate jpa

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

在Hibernate Annotation下使用命名查询有什么好处

使用命名查询和我们拥有的查询有什么好处吗?看性能,可用性,可维护性等等....

在我们的应用程序中,我们已经定义了如下查询:

private static final String SELECT_CODE_FOR_STORE = "select DISTINCT code from Code code "
        + "join code.codeDescriptions codeDesc "
        + "join codeDesc.stores store where store.id =:"
        + DataAccessConstants.PARAM_STORE_ID;
Run Code Online (Sandbox Code Playgroud)

(这些都放在DAO对象中,其中有很多.)

我们通过以下方式调用上述内容:

Map<String, Object> paramMap = new HashMap<String, Object>();
paramMap.put("storeId", codeDescriptionSearchCriteria.getStoreId());
List<Code> list = getJpaTemplate().findByNamedParams(
        SELECT_CODE_FOR_STORE, paramMap);
return list; 
Run Code Online (Sandbox Code Playgroud)

这不过是:

public List findByNamedParams(final String arg0, 
                              final Map<String, 
                              ? extends Object> arg1) throws DataAccessException 
{
  return org.springframework.orm.jpa.JpaTemplate.findByNamedParams(arg0, arg1);
}
Run Code Online (Sandbox Code Playgroud)

与使用相比

@NamedQuery(name="SELECT_CODE_FOR_STORE", query="select ......")
Run Code Online (Sandbox Code Playgroud)

我们的DAO对象的顶部.

我看到这个帖子似乎是组织所有这些查询的好方法.或者,如果我们有这么多类型的查询,也许是时候重新评估我们的数据库和对象结构了.

java performance annotations hibernate

4
推荐指数
1
解决办法
7568
查看次数