项目中遇到的问题总结

1、tomcatPluginV31插件安装后在eclipse下找不到tomcat插件的显示。
解决方法D:/eclipse>java -jar startup.jar -clean
2、ibmJdk问题
如果启动的时候没有足够大的内存给于JDK使用就会报错
JVMDG217: Dump Handler is Processing Signal 11 - Please Wait.
JVMDG303: JVM Requesting Java core file
JVMDG304: Java core file written to d:/MyEclipse5.1.0/eclipse/javacore.20070706.200928.3760.txt
JVMDG215: Dump Handler has Processed Exception Signal 11.

解决办法:启动的时候加大JVM的启动使用内存数
可以在eclipse里面设置jvm的时候设置一下启动的参数就可以了。
-Xms128M -Xmx256M

3、db2时间问题
在更新DB2时间时候,因是使用了DB2中timeStamp 类型,所以时间格式必须是 "yyyy-MM-dd HH:mm:ss"
4、db2要用相对应安装的db2自带的jdbc驱动(db2的jdbc驱动兼容性不好)。
5、aix上使用jni问题
在AIX上使用jni出现了很多问题,我来说一下其中的所在。
我们自己把原有的两个so文件的函数封装了起来。当我们把三个so都放在java.libary.path下面的时候。
报错说找到不到其他两个so,经过反复测试,终于知道了原因。要把其他两个so文件放置到web服务器启动的文件夹下面才可以。
比如tomcat,就要放置在tomcat/bin目录下面。 

6、eclipse编译错误
如果使用了jdk1.4.2但是在preferences -->java-->compiler使用了5.0就会出现下面的错误信息
08-29 21:32:33,312 [main] ERROR (StandardContext.java:3714) - Error configuring application listener of class com.resoft.recis.sys.ContextFactoryListener
java.lang.UnsupportedClassVersionError: com/resoft/recis/sys/ContextFactoryListener (Unsupported major.minor version 49.0)

7、提高hibernate效率

如果在hibernate.cfg.xml中没有设置<property name="hibernate.cache.use_query_cache">true</property>

spring里面

  <property name="hibernateProperties">
   <props>
    <prop key="hibernate.dialect">org.hibernate.dialect.DB2Dialect</prop>
    <prop key="hibernate.cache.use_query_cache">true</prop>
    <prop key="hibernate.query.factory_class">org.hibernate.hql.ast.ASTQueryTranslatorFactory</prop>
   </props>
  </property>

8、hibernate使用连接池org.apache.commons.dbcp.BasicDataSource。

org.apache.commons.dbcp.BasicDataSource的最大连接数是8

是不能满足需要的所以要在spring里面配置这个选项为40就足够用了,另外还要加大web服务器的内存,这样能提高效率。

 <bean id="dataSource1" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
  <property name="driverClassName">
   <value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>
  </property>
  <property name="url">
   <value>jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=test</value>
  </property>
  <property name="username">
   <value>test</value>
  </property>
  <property name="password">
   <value>test</value>
  </property>
  <property name="maxActive">
   <value>40</value>
  </property>
  <property name="maxIdle">
   <value>20</value>
  </property>
 </bean>

 

9  SQL Error: 156, SQLState: HY000

错误显示:

17:24:34,992 ERROR JDBCExceptionReporter:58 - [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]在关键字 'ORDER' 附近有语法错误。 17:24:34,992  WARN JDBCExceptionReporter:57 - SQL Error: 156, SQLState: HY000 17:24:35,002 ERROR JDBCExceptionReporter:58 - [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]在关键字 'ORDER' 附近有语法错误。 17:24:35,022  WARN JDBCExceptionReporter:34 - SQL Warning: 0, SQLState: net.sf.hibernate.exception.GenericJDBCException : could not initialize collection: [com.Customer.orders#2]
部分原文件: order.hbm.xml

< hibernate-mapping >   < class name = "com.Order" table = "ORDER" >      < id name = "id" type = "long" column = "ID" >         < generator class = "increment" />       </ id >    < property name = "orderNumber" type = "string" >         < column name = "ORDER_NUMBER" length = "15" />       </ property >             < many-to-one         name = "customer"         column = "CUSTOMER_ID"         class = "com.Customer"         outer-join = "true"          />
原因分析:因为 order 表在 SQL 2000 数据库中已经定义了,如果用户在定义了 order 表,并且程序对该表进行连接等操作就会出错

问题解决:将 引用 order 处改为 [order]

10 Can't connect to X11 window server using ':0.0' as the value of the DISPLAY variable

在程序中增加 -Djava.awt.headless=true

tomcat中 JAVA_OPTS='-Xms1024m -Xmx2048m -Djava.awt.headless=true'

上一篇:MySQL无法启动,报1045的解决方法


下一篇:使用Domino自带的模板定制其Web登录界面