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'