Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
2.0-M3
-
None
-
win xp pro sp2, java 1.5.0_2, httpd 2.0.54, tomcat 5.5.9, jetspeed 2.0 m3, postgresql 8.0.3
Description
Automatic portlet deployment throws errors (example below). The problem is "bytea" type in LOCALIZED_DESCRIPTION.DESCRIPTION, LANGUAGE.KEYWORDS and PORTLET_CONTENT_TYPE.MODES columns. Changing the type to "varchar" for each column fixes the problem. Another suggestion is to convert inserted values from an ordinary string to a binary value string. II haven't considered encoding issues and any possible complications from these solutions.
Deployment log sample:
2005-08-10 01:46:26,296 [Timer-12] ERROR deployment - Failed to register portlet application, BadPortlet
org.springframework.jdbc.BadSqlGrammarException: Bad SQL grammar [] in task 'OJB operation'; nested exception is java.sql.SQLException: ERROR: column "description" is of type bytea but expression is of type character varying
java.sql.SQLException: ERROR: column "description" is of type bytea but expression is of type character varying
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:1471)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1256)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:175)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:389)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:330)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeUpdate(AbstractJdbc2Statement.java:282)
at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:101)
at org.apache.ojb.broker.accesslayer.JdbcAccessImpl.executeInsert(JdbcAccessImpl.java:198)
at org.apache.ojb.broker.core.PersistenceBrokerImpl.storeToDb(PersistenceBrokerImpl.java:1642)
at org.apache.ojb.broker.core.PersistenceBrokerImpl.store(PersistenceBrokerImpl.java:1557)
at org.apache.ojb.broker.core.PersistenceBrokerImpl.store(PersistenceBrokerImpl.java:715)
at org.apache.ojb.broker.core.PersistenceBrokerImpl.storeAndLinkOneToMany(PersistenceBrokerImpl.java:949)
at org.apache.ojb.broker.core.PersistenceBrokerImpl.storeCollections(PersistenceBrokerImpl.java:814)
at org.apache.ojb.broker.core.PersistenceBrokerImpl.storeToDb(PersistenceBrokerImpl.java:1666)
at org.apache.ojb.broker.core.PersistenceBrokerImpl.store(PersistenceBrokerImpl.java:1557)
at org.apache.ojb.broker.core.PersistenceBrokerImpl.store(PersistenceBrokerImpl.java:715)
at org.apache.ojb.broker.core.PersistenceBrokerImpl.storeAndLinkOneToOne(PersistenceBrokerImpl.java:772)
at org.apache.ojb.broker.core.PersistenceBrokerImpl.storeReferences(PersistenceBrokerImpl.java:755)
at org.apache.ojb.broker.core.PersistenceBrokerImpl.storeToDb(PersistenceBrokerImpl.java:1594)
at org.apache.ojb.broker.core.PersistenceBrokerImpl.store(PersistenceBrokerImpl.java:1557)
at org.apache.ojb.broker.core.PersistenceBrokerImpl.store(PersistenceBrokerImpl.java:715)
at org.apache.ojb.broker.core.DelegatingPersistenceBroker.store(DelegatingPersistenceBroker.java:175)
at org.apache.ojb.broker.core.DelegatingPersistenceBroker.store(DelegatingPersistenceBroker.java:175)
at org.springframework.orm.ojb.PersistenceBrokerTemplate$9.doInPersistenceBroker(PersistenceBrokerTemplate.java:267)
at org.springframework.orm.ojb.PersistenceBrokerTemplate.execute(PersistenceBrokerTemplate.java:167)
at org.springframework.orm.ojb.PersistenceBrokerTemplate.store(PersistenceBrokerTemplate.java:265)
at org.apache.jetspeed.components.portletregistry.PersistenceBrokerPortletRegistry.registerPortletApplication(PersistenceBrokerPortletRegistry.java:203)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:284)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:155)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:122)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:56)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:144)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:174)
at $Proxy0.registerPortletApplication(Unknown Source)
at org.apache.jetspeed.tools.pamanager.PortletApplicationManager.registerPortletApplication(PortletApplicationManager.java:242)
at org.apache.jetspeed.tools.pamanager.PortletApplicationManager.startPA(PortletApplicationManager.java:332)
at org.apache.jetspeed.tools.pamanager.PortletApplicationManager.startPortletApplication(PortletApplicationManager.java:105)
at org.apache.jetspeed.container.JetspeedContainerServlet.attemptStart(JetspeedContainerServlet.java:166)
at org.apache.jetspeed.container.JetspeedContainerServlet.access$200(JetspeedContainerServlet.java:50)
at org.apache.jetspeed.container.JetspeedContainerServlet$1.run(JetspeedContainerServlet.java:137)
at java.util.TimerThread.mainLoop(Unknown Source)
at java.util.TimerThread.run(Unknown Source)