History | Log In     View a printable version of the current page.  
Issue Details (XML | Word | Printable)

Key: UP-1039
Type: Bug Bug
Status: Closed Closed
Resolution: Fixed
Priority: Major Major
Assignee: Unassigned
Reporter: Elliot Metsger
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
uPortal

2.5: RDBMPortletPreferencesStore doesn't support MS-SQL

Created: 03/May/05 10:08 AM   Updated: 03/Jul/07 04:11 PM
Component/s: Database
Affects Version/s: 2.5.0 M1, 2.5.0 RC1, 2.5.0 RC3, 2.5.0 RC2, 2.5.0 GA
Fix Version/s: 2.5.1 RC1

Original Estimate: Unknown Remaining Estimate: Unknown Time Spent: Unknown
File Attachments: 1. Text File UP-1039-patch.txt (1 kb)
2. Text File UP-1039-patch.txt (1 kb)

Environment: MS-SQL Server, Tomcat 5.5, Windows
Issue Links:
Generic Relation
This issue relates to:
UP-849 RDBMPortletPreferencesStore doesn't s... Major Closed
This issue relates to:
UP-1158 o.j.p.layout.dlm.RDBMDistributedLayou... Major Closed


 Description  « Hide
When trying to render portlets using the MS-SQL JDBC driver I get this error and stacktrace in the portlet window (this is for Test Portlet 1 but it happens for all the "out-of-the box" portlets):
Channel ID:
15-3

Message:
IChannelRenderer.completeRendering() threw

Error type:
Channel failed to render (code 1)

Problem type:


Error message
Initialization of the portlet container failed. [based on exception: Could not load portlet definition preferences: [Microsoft][SQLServer 2000 Driver for JDBC]ResultSet can not re-read row data for column 2.]

Inner exception:

java.io.IOException: Could not load portlet definition preferences: [Microsoft][SQLServer 2000 Driver for JDBC]ResultSet can not re-read row data for column 2.
at org.jasig.portal.container.om.portlet.PortletDefinitionImpl.loadPreferences(PortletDefinitionImpl.java:218)
at org.jasig.portal.channels.portlet.CPortletAdapter.initPortletWindow(CPortletAdapter.java:220)
at org.jasig.portal.channels.portlet.CPortletAdapter.renderCharacters(CPortletAdapter.java:476)
at org.jasig.portal.MultithreadedCharacterChannelAdapter.renderCharacters(MultithreadedCharacterChannelAdapter.java:71)
at org.jasig.portal.ChannelRenderer$Worker.run(ChannelRenderer.java:486)
at org.jasig.portal.utils.threading.Worker.run(Worker.java:88)

Outer exception:

java.io.IOException: Could not load portlet definition preferences: [Microsoft][SQLServer 2000 Driver for JDBC]ResultSet can not re-read row data for column 2.
at org.jasig.portal.container.om.portlet.PortletDefinitionImpl.loadPreferences(PortletDefinitionImpl.java:218)
at org.jasig.portal.channels.portlet.CPortletAdapter.initPortletWindow(CPortletAdapter.java:220)
at org.jasig.portal.channels.portlet.CPortletAdapter.renderCharacters(CPortletAdapter.java:476)
at org.jasig.portal.MultithreadedCharacterChannelAdapter.renderCharacters(MultithreadedCharacterChannelAdapter.java:71)
at org.jasig.portal.ChannelRenderer$Worker.run(ChannelRenderer.java:486)
at org.jasig.portal.utils.threading.Worker.run(Worker.java:88)

 All   Comments   Work Log   Change History      Sort Order:
Andrew Petro [03/May/05 10:10 AM]
The bug identified in UP-849 as applying to 2-4-patches also applies to the HEAD and needs to be resolved for uPortal 2.5.

Elliot Metsger [03/May/05 12:52 PM]
I haven't tested 2.5 to see if the bug occurs, but the HEAD version of RDBMPortletPreferencesStore seems to have the buggy code (from v 1.11 - HEAD at the time of this writing) - http://www.uportal.org/cgi-bin/viewcvs.cgi/portal/source/org/jasig/portal/RDBMPortletPreferencesStore.java?annotate=1.11

215 try {
216 while (rs.next()) {
217 final String prefName = rs.getString("PORTLET_PREF_NAME");
218 final String prefValue = rs.getString("PORTLET_PREF_VALUE");
219
220 if (!readOnlyMap.containsKey(prefName)) {
221 if (READ_ONLY_TRUE.equals(rs.getString("PORTLET_PREF_READONLY"))) { 222 readOnlyMap.put(prefName, Boolean.TRUE); 223 }
224 else { 225 readOnlyMap.put(prefName, Boolean.FALSE); 226 }
227 }
228
229 List prefList = (List)prefsBuilder.get(prefName);
230 edalquist 1.1
231 if (prefList == null)
232 { 233 prefList = new LinkedList(); 234 prefsBuilder.put(prefName, prefList); 235 }
236
237 prefList.add(prefValue);
238 }
239 }


Elliot Metsger [12/Jul/05 12:06 AM]
Same exception seen in other RDBM-related classes for UPortal 2.4 and 2.5.

Elliot Metsger [13/Jul/05 11:06 AM]
Patch which works for us.

Elliot Metsger [13/Jul/05 11:07 AM]
Er, had the revisions reversed on previous patch. this one is correct!

Andrew Petro [15/Jul/05 06:31 PM]
Applied patch to 2-5-patches.