Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Invalid
-
2.1
-
None
-
None
-
Windows XP SP2; JAVA "1.6.0_01" (Sun Microsystems);
Description
I've build a JSR168 portal application, developed and tested with Apache Pluto 1.0.2 (svn).
This works very well and so far error free.
When I use my portlets in Jetspeed 2.1 and want to save my preferences, I've got an nested SQL Exception from the portlet container. See error log below. I only can estimate the serialized size of my object with a value of ~1000bytes. I've only did serializing + zip + base64 and got a value of 983 ascii characters. So at least, this is bigger than 256
10.04.2007 22:42:22 org.springframework.web.portlet.FrameworkPortlet processRequest
SCHWERWIEGEND: Could not complete request
org.springframework.dao.DataIntegrityViolationException: OJB operation; SQL []; A truncation error was encountered trying to shrink VARCHAR 'rO0ABXNyACBjb20ucGNzLnBvcnRvd2ViLklFVk1Db250ZXh0SW1wbLkRQyPO&' to length 254.; nested exception is SQL Exception: A truncation error was encountered trying to shrink VARCHAR 'rO0ABXNyACBjb20ucGNzLnBvcnRvd2ViLklFVk1Db250ZXh0SW1wbLkRQyPO&' to length 254.
Caused by: ERROR 22001: A truncation error was encountered trying to shrink VARCHAR 'rO0ABXNyACBjb20ucGNzLnBvcnRvd2ViLklFVk1Db250ZXh0SW1wbLkRQyPO&' to length 254.
at org.apache.derby.iapi.error.StandardException.newException(Unknown Source)
at org.apache.derby.iapi.types.SQLChar.hasNonBlankChars(Unknown Source)
at org.apache.derby.iapi.types.SQLVarchar.normalize(Unknown Source)
at org.apache.derby.iapi.types.SQLVarchar.normalize(Unknown Source)
at org.apache.derby.iapi.types.DataTypeDescriptor.normalize(Unknown Source)
at org.apache.derby.impl.sql.execute.NormalizeResultSet.normalizeRow(Unknown Source)
at org.apache.derby.impl.sql.execute.NormalizeResultSet.getNextRowCore(Unknown Source)
at org.apache.derby.impl.sql.execute.DMLWriteResultSet.getNextRowCore(Unknown Source)
at org.apache.derby.impl.sql.execute.InsertResultSet.open(Unknown Source)
at org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unknown Source)
at org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(Unknown Source)
at org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeStatement(Unknown Source)
at org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeUpdate(Unknown Source)
at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:101)
at org.apache.ojb.broker.accesslayer.JdbcAccessImpl.executeInsert(JdbcAccessImpl.java:216)
at org.apache.ojb.broker.core.PersistenceBrokerImpl.storeToDb(PersistenceBrokerImpl.java:1754)
at org.apache.ojb.broker.core.PersistenceBrokerImpl.store(PersistenceBrokerImpl.java:813)
at org.apache.ojb.broker.core.PersistenceBrokerImpl.store(PersistenceBrokerImpl.java:726)
at org.apache.ojb.broker.core.PersistenceBrokerImpl.storeAndLinkOneToMany(PersistenceBrokerImpl.java:1057)
at org.apache.ojb.broker.core.PersistenceBrokerImpl.storeCollections(PersistenceBrokerImpl.java:928)
at org.apache.ojb.broker.core.PersistenceBrokerImpl.storeToDb(PersistenceBrokerImpl.java:1776)
at org.apache.ojb.broker.core.PersistenceBrokerImpl.store(PersistenceBrokerImpl.java:813)
at org.apache.ojb.broker.core.PersistenceBrokerImpl.store(PersistenceBrokerImpl.java:726)
at org.apache.ojb.broker.core.DelegatingPersistenceBroker.store(DelegatingPersistenceBroker.java:175)
at org.apache.ojb.broker.core.DelegatingPersistenceBroker.store(DelegatingPersistenceBroker.java:175)
at org.springmodules.orm.ojb.PersistenceBrokerTemplate$9.doInPersistenceBroker(PersistenceBrokerTemplate.java:246)
at org.springmodules.orm.ojb.PersistenceBrokerTemplate.execute(PersistenceBrokerTemplate.java:141)
at org.springmodules.orm.ojb.PersistenceBrokerTemplate.store(PersistenceBrokerTemplate.java:244)
at org.apache.jetspeed.prefs.impl.PersistenceBrokerPreferencesProvider.storeNode(PersistenceBrokerPreferencesProvider.java:426)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:318)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:203)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:162)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:185)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:209)
at $Proxy8.storeNode(Unknown Source)
at org.apache.jetspeed.prefs.impl.PreferencesImpl.putSpi(PreferencesImpl.java:244)
at java.util.prefs.AbstractPreferences.put(AbstractPreferences.java:234)
at org.apache.jetspeed.om.preference.impl.PrefsPreference.setValues(PrefsPreference.java:267)
at org.apache.jetspeed.om.preference.impl.PrefsPreference.setValues(PrefsPreference.java:334)
at org.apache.pluto.core.impl.PortletPreferencesImpl.store(PortletPreferencesImpl.java:327)
at com.pcs.portoweb.portal.editpref.PrefUtils.setPreferedIEVMContext(PrefUtils.java:89)
at com.pcs.portoweb.portal.editpref.TabSettingsViewController.updateUserEnvironment(TabSettingsViewController.java:132)
at com.pcs.portoweb.portal.editpref.TabSettingsViewController.doHandleActionRequestInternal(TabSettingsViewController.java:50)
at com.pcs.portoweb.portal.AbstractTabViewController.handleActionRequestInternal(AbstractTabViewController.java:35)
at org.springframework.web.portlet.mvc.AbstractController.handleActionRequest(AbstractController.java:197)
at org.springframework.web.portlet.mvc.SimpleControllerHandlerAdapter.handleAction(SimpleControllerHandlerAdapter.java:46)
at org.springframework.web.portlet.DispatcherPortlet.doActionService(DispatcherPortlet.java:638)
at org.springframework.web.portlet.FrameworkPortlet.processRequest(FrameworkPortlet.java:418)
at org.springframework.web.portlet.FrameworkPortlet.processAction(FrameworkPortlet.java:400)
at org.apache.jetspeed.factory.JetspeedPortletInstance.processAction(JetspeedPortletInstance.java:96)
at org.apache.jetspeed.container.JetspeedContainerServlet.doGet(JetspeedContainerServlet.java:245)
at org.apache.jetspeed.container.JetspeedContainerServlet.doPost(JetspeedContainerServlet.java:383)
.... cutted