View Full Version : spring and jdk1.3
kshacks
Oct 8th, 2004, 08:46 AM
Hi
Has anyone encountered any issues with spring and WSAD intergration so far ? We have websphere 5.1.1 which uses JDK1.3.1 by default so was wondering if anyone had seen any issues with spring and WSAD integration with respect to the JDK .
we are evaluating to use spring and WSAD for our next project so I wanted to be sure if there was any issues before hand itself.
can JDK1.4 be successfully applied to websphere 5.1.2 and then use spring with jdk1.4 or we can continue to use it with whatever JDK version websphere provides (which is jdk1.3.1 as of now )
- Thanks
Keith
Juergen Hoeller
Oct 8th, 2004, 01:04 PM
We generally fully support JDK 1.3, so you shouldn't encounter any issues in your environment.
Spring needs to be compiled against JDK 1.4, but does not require JDK 1.4 at runtime unless absolutely necessary (for example, for PreferencesPlaceholderConfigurer).
We do leverage some optimized JDK 1.4 classes when available, for example: LinkedHashMap, IdentityHashMap, StackTraceElement. On JDK 1.3, less efficient fallbacks are used.
Juergen
mikef2255
Nov 4th, 2005, 10:40 PM
I must use JDK 1.3 on a project and in doing so I've downgraded to Spring 1.1.3. I still have problems with LinkedHashMap being not found when trying to load the database connection. I've tried all kinds of connection pools (jakarta dbcp/c3po) but they all fail right below. The emailCampaignDao is an Ibatis sqlmap subclassed from the spring ibatis classes and takes the datasource as a property.
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerD ataSource">
<property name="driverClassName"><value>com.mysql.jdbc.Driver</value></property>
<property name="url"><value>jdbc:mysql://localhost:3306/nz</value></property>
<property name="password"><value>test1</value></property>
<property name="username"><value>test1</value></property>
</bean>
It does not seem to fall back to a supported collection. Any ideas would be appreciated.
org.springframework.beans.factory.BeanCreationExce ption: Error creating bean with name 'emailCampaignDao' defined in cla
ss path resource [config/springDaoBeansContext.xml]: Initialization of bean failed; nested exception is java.lang.NoClas
sDefFoundError: java/util/LinkedHashMap
java.lang.NoClassDefFoundError: java/util/LinkedHashMap
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java :488)
at java.security.SecureClassLoader.defineClass(Secure ClassLoader.java:106)
at java.net.URLClassLoader.defineClass(URLClassLoader .java:243)
at java.net.URLClassLoader.access$100(URLClassLoader. java:51)
at java.net.URLClassLoader$1.run(URLClassLoader.java: 190)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.j ava:183)
at java.lang.ClassLoader.loadClass(ClassLoader.java:2 94)
at java.lang.ClassLoader.loadClass(ClassLoader.java:2 50)
at java.lang.ClassLoader.loadClassInternal(ClassLoade r.java:310)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonReg isteringDriver.java:264)
at java.sql.DriverManager.getConnection(DriverManager .java:512)
at java.sql.DriverManager.getConnection(DriverManager .java:172)
at org.springframework.jdbc.datasource.DriverManagerD ataSource.getConnectionFromDriverManager(DriverMan agerDataS
ource.java:156)
at org.springframework.jdbc.datasource.DriverManagerD ataSource.getConnectionFromDriverManager(DriverMan agerDataS
ource.java:144)
at org.springframework.jdbc.datasource.DriverManagerD ataSource.getConnection(DriverManagerDataSource.ja va:132)
at org.springframework.jdbc.datasource.DataSourceUtil s.doGetConnection(DataSourceUtils.java:177)
at org.springframework.jdbc.datasource.DataSourceUtil s.getConnection(DataSourceUtils.java:152)
at org.springframework.jdbc.datasource.DataSourceUtil s.getConnection(DataSourceUtils.java:128)
at org.springframework.jdbc.support.JdbcUtils.extract DatabaseMetaData(JdbcUtils.java:113)
at org.springframework.jdbc.support.JdbcUtils.extract DatabaseMetaData(JdbcUtils.java:152)
at org.springframework.jdbc.support.SQLErrorCodesFact ory.getErrorCodes(SQLErrorCodesFactory.java:216)
at org.springframework.jdbc.support.SQLErrorCodeSQLEx ceptionTranslator.setDataSource(SQLErrorCodeSQLExc eptionTra
nslator.java:115)
at org.springframework.jdbc.support.SQLErrorCodeSQLEx ceptionTranslator.<init>(SQLErrorCodeSQLExceptionTranslator
.java:96)
at org.springframework.jdbc.support.JdbcAccessor.getE xceptionTranslator(JdbcAccessor.java:76)
at org.springframework.jdbc.support.JdbcAccessor.afte rPropertiesSet(JdbcAccessor.java:93)
at org.springframework.orm.ibatis.SqlMapClientTemplat e.afterPropertiesSet(SqlMapClientTemplate.java:125 )
at org.springframework.orm.ibatis.support.SqlMapClien tDaoSupport.afterPropertiesSet(SqlMapClientDaoSupp ort.java:
101)
at org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.invokeInitMethods(Abstr actAutowi
reCapableBeanFactory.java:1037)
at org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.createBean(AbstractAuto wireCapab
leBeanFactory.java:305)
at org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.createBean(AbstractAuto wireCapab
leBeanFactory.java:223)
at org.springframework.beans.factory.support.Abstract BeanFactory.getBean(AbstractBeanFactory.java:236)
at org.springframework.beans.factory.support.Abstract BeanFactory.getBean(AbstractBeanFactory.java:159)
at org.springframework.beans.factory.support.DefaultL istableBeanFactory.preInstantiateSingletons(Defaul tListable
BeanFactory.java:261)
at org.springframework.context.support.AbstractApplic ationContext.refresh(AbstractApplicationContext.ja va:317)
at org.springframework.context.support.ClassPathXmlAp plicationContext.<init>(ClassPathXmlApplicationContext.java
:80)
at org.springframework.context.support.ClassPathXmlAp plicationContext.<init>(ClassPathXmlApplicationContext.java
:65)
at com.apexconsultingservices.common.configuration.Ap plicationInitializationUtils.initializeServices(Ap plication
InitializationUtils.java:124)
at com.apexconsultingservices.batch.common.AbstractBa tchSpringApplication.initializeSpringContext(Abstr actBatchS
pringApplication.java:112)
at com.apexconsultingservices.batch.common.AbstractBa tchSpringApplication.preProcess(AbstractBatchSprin gApplicat
ion.java:82)
at com.apexconsultingservices.batch.common.AbstractBa tchApplication.execute(AbstractBatchApplication.ja va:101)
at com.nowandzen.emailprograms.applications.SendEmail ForCampaign.main(SendEmailForCampaign.java:164)
org.springframework.beans.factory.BeanCreationExce ption: Error creating bean with name 'emailCampaignDao' defined in cla
ss path resource [config/springDaoBeansContext.xml]: Initialization of bean failed; nested exception is java.lang.NoClas
sDefFoundError: java/util/LinkedHashMap
at org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.createBean(AbstractAuto wireCapab
leBeanFactory.java:318)
at org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.createBean(AbstractAuto wireCapab
leBeanFactory.java:223)
at org.springframework.beans.factory.support.Abstract BeanFactory.getBean(AbstractBeanFactory.java:236)
at org.springframework.beans.factory.support.Abstract BeanFactory.getBean(AbstractBeanFactory.java:159)
at org.springframework.beans.factory.support.DefaultL istableBeanFactory.preInstantiateSingletons(Defaul tListable
BeanFactory.java:261)
at org.springframework.context.support.AbstractApplic ationContext.refresh(AbstractApplicationContext.ja va:317)
at org.springframework.context.support.ClassPathXmlAp plicationContext.<init>(ClassPathXmlApplicationContext.java
:80)
at org.springframework.context.support.ClassPathXmlAp plicationContext.<init>(ClassPathXmlApplicationContext.java
:65)
at com.apexconsultingservices.common.configuration.Ap plicationInitializationUtils.initializeServices(Ap plication
InitializationUtils.java:124)
at com.apexconsultingservices.batch.common.AbstractBa tchSpringApplication.initializeSpringContext(Abstr actBatchS
pringApplication.java:112)
at com.apexconsultingservices.batch.common.AbstractBa tchSpringApplication.preProcess(AbstractBatchSprin gApplicat
ion.java:82)
at com.apexconsultingservices.batch.common.AbstractBa tchApplication.execute(AbstractBatchApplication.ja va:101)
at com.nowandzen.emailprograms.applications.SendEmail ForCampaign.main(SendEmailForCampaign.java:164)
java.lang.Exception: ApplicationInitializationUtils.initializeServices initialization failed.
at com.apexconsultingservices.common.configuration.Ap plicationInitializationUtils.initializeServices(Ap plication
InitializationUtils.java:140)
at com.apexconsultingservices.batch.common.AbstractBa tchSpringApplication.initializeSpringContext(Abstr actBatchS
pringApplication.java:112)
at com.apexconsultingservices.batch.common.AbstractBa tchSpringApplication.preProcess(AbstractBatchSprin gApplicat
ion.java:82)
at com.apexconsultingservices.batch.common.AbstractBa tchApplication.execute(AbstractBatchApplication.ja va:101)
at com.nowandzen.emailprograms.applications.SendEmail ForCampaign.main(SendEmailForCampaign.java:164)
Exception in thread "main" java.lang.NullPointerException
at com.apexconsultingservices.batch.common.AbstractBa tchSpringApplication.initializeSpringContext(Abstr actBatchS
pringApplication.java:121)
at com.apexconsultingservices.batch.common.AbstractBa tchSpringApplication.preProcess(AbstractBatchSprin gApplicat
ion.java:82)
at com.apexconsultingservices.batch.common.AbstractBa tchApplication.execute(AbstractBatchApplication.ja va:101)
at com.nowandzen.emailprograms.applications.SendEmail ForCampaign.main(SendEmailForCampaign.java:164)
Costin Leau
Nov 5th, 2005, 01:34 AM
It appears the problem is the mysql driver. I'd suggest to see if you get any help available from them and try to use an older version of the driver or compile the driver yourself.
Here is a useful link: http://dev.mysql.com/doc/refman/5.0/en/cj-system-requirements.html
apparently jdk 1.2+ are supported and there is a work around for jdks below 1.4
mikef2255
Nov 5th, 2005, 10:11 AM
Thanks for the pointer, that seems the be the problem. That and the fact that the system administrator cannot figure out how to upgrade their FreeBSD boxes to allow use of JDK 1.4.
Costin Leau
Nov 5th, 2005, 02:41 PM
Just point him to http://www.freebsd.org/java/. It's fairly easy.
mikef2255
Nov 5th, 2005, 02:48 PM
Costin,
Again thanks. I already gave this person the link you suggest but their response was that their server would have to be upgraded through several versions of the OS before they could install 1.4 . They were not willing to take that on.
I think the issue is of marginal technical ability in a unix sys admin role. While working with them to get java installed and the environment set up for the user account/java run scripts, I got the impression this was not a very experienced person. You know, getting shell scripts and environment variables set up properly. Scarey.
Thanks again for your help, I've tested my code on 1.3 and 1.4 and it works equally well in both environments after retrograding the MySQL driver.
Costin Leau
Nov 6th, 2005, 12:09 PM
Great. As a simple advice, under FreeBSD you can run java with Linux compatibility (ABL). Just FYI.
Powered by vBulletin® Version 4.2.1 Copyright © 2013 vBulletin Solutions, Inc. All rights reserved.