[JBoss JIRA] (GTNWSRP-360) GetPortletPropertyDescription is missing non-portlet.xml declared properties
by RH Bugzilla Integration (JIRA)
[ https://issues.jboss.org/browse/GTNWSRP-360?page=com.atlassian.jira.plugi... ]
RH Bugzilla Integration commented on GTNWSRP-360:
-------------------------------------------------
Martin Weiler <mweiler(a)redhat.com> made a comment on [bug 952129|https://bugzilla.redhat.com/show_bug.cgi?id=952129]
Closing as Won't fix, as the GateIn WSRP implementation is spec compliant. Section 7.14 - getPortletPropertyDescription Operation - of the WSRP 2.0 specification says:
"This operation allows the Consumer to discover the published properties of a Portlet and information (e.g. type and description) that could be useful in generating a user interface for editing the Portlet's configuration."
In one of the previous sections, the 'published properties' are defined as "Properties that are declared in the metadata specific to a Portlet.". This means that only those properties which are declared in the portlet deployment descriptor (portlet.xml) are considered part of the published interface of a portlet, and are therefore returned by the getPortletPropertyDescription method. Portlet properties which are added only by the setPortletProperties method are not part of this published interface. Furthermore, there is no additional information or description about these properties available, so there would be nothing to return, besides the property name.
If the getPortletPropertyDescription should return all available properties of a portlet, then these need to be declared in the deployment descriptor.
> GetPortletPropertyDescription is missing non-portlet.xml declared properties
> ----------------------------------------------------------------------------
>
> Key: GTNWSRP-360
> URL: https://issues.jboss.org/browse/GTNWSRP-360
> Project: GateIn WSRP
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Components: Producer
> Affects Versions: 2.1.7-GA
> Reporter: Martin Weiler
> Assignee: Chris Laprun
>
> Calling getPortletPropertyDescription only contains properties declared in portlet.xml, but is missing properties which have been added by a prior call to setPortletProperties.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
12 years, 11 months
[JBoss JIRA] (GTNPORTAL-2711) Database/jcr is not initialized before first call
by Trong Tran (JIRA)
[ https://issues.jboss.org/browse/GTNPORTAL-2711?page=com.atlassian.jira.pl... ]
Trong Tran updated GTNPORTAL-2711:
----------------------------------
Status: Resolved (was: Pull Request Sent)
Resolution: Done
> Database/jcr is not initialized before first call
> -------------------------------------------------
>
> Key: GTNPORTAL-2711
> URL: https://issues.jboss.org/browse/GTNPORTAL-2711
> Project: GateIn Portal
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Reporter: Stian Thorgersen
> Assignee: Minh Hoang TO
> Labels: done, portal-s70
> Fix For: 3.6.0.Beta02
>
>
> I believe some data structures are not initialized in chromattic/jcr until first used. If multiple threads do this at the same time it causes an ItemExistsException to be thrown.
> To reproduce this issue I've slightly modified TestGadgetTokenInfoService in gadgets/core available here https://github.com/stianst/gatein-portal/tree/GTNPORTAL-2711. It may not fail the first time, so run it a few times if it doesn't.
> Stack trace:
> {code}
> org.chromattic.api.UndeclaredRepositoryException: javax.jcr.ItemExistsException: [portal-test] ADD NODE. Item already exists. Condition: parent ID, name, index. []:1[]gadgettokens:1, ID: db7e626b7f0001013865a7c41b
> aa4a6e, ParentID: 00exo0jcr0root0uuid0000000000000. Cause >>>> integrity constraint violation: unique constraint or index violation: JCR_IDX_IPORTALTEST_PARENT: integrity constraint violation: unique constraint or
> index violation: JCR_IDX_IPORTALTEST_PARENT: [portal-test] ADD NODE. Item already exists. Condition: parent ID, name, index. []:1[]gadgettokens:1, ID: db7e626b7f0001013865a7c41baa4a6e, ParentID: 00exo0jcr0root0uu
> id0000000000000. Cause >>>> integrity constraint violation: unique constraint or index violation: JCR_IDX_IPORTALTEST_PARENT: integrity constraint violation: unique constraint or index violation: JCR_IDX_IPORTALTE
> ST_PARENT: integrity constraint violation: unique constraint or index violation: JCR_IDX_IPORTALTEST_PARENT
> at org.chromattic.core.DomainSession.save(DomainSession.java:181)
> at org.chromattic.core.api.ChromatticSessionImpl.save(ChromatticSessionImpl.java:246)
> at org.exoplatform.commons.chromattic.AbstractContext.close(AbstractContext.java:129)
> at org.exoplatform.commons.chromattic.LocalContext.close(LocalContext.java:56)
> at org.exoplatform.commons.chromattic.ChromatticLifeCycle.closeContext(ChromatticLifeCycle.java:306)
> at org.exoplatform.commons.chromattic.ContextualTask.executeWith(ContextualTask.java:49)
> at org.exoplatform.portal.gadget.core.GadgetTokenInfoService.createToken(GadgetTokenInfoService.java:50)
> at org.exoplatform.portal.gadget.TestGadgetTokenInfoService.createTokens(TestGadgetTokenInfoService.java:69)
> at org.exoplatform.portal.gadget.TestGadgetTokenInfoService.testGetToken(TestGadgetTokenInfoService.java:88)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:601)
> at junit.framework.TestCase.runTest(TestCase.java:168)
> at junit.framework.TestCase.runBare(TestCase.java:134)
> at org.exoplatform.component.test.AbstractGateInTest.runBare(AbstractGateInTest.java:91)
> at junit.framework.TestResult$1.protect(TestResult.java:110)
> at junit.framework.TestResult.runProtected(TestResult.java:128)
> at junit.framework.TestResult.run(TestResult.java:113)
> at junit.framework.TestCase.run(TestCase.java:124)
> at junit.framework.TestSuite.runTest(TestSuite.java:243)
> at junit.framework.TestSuite.run(TestSuite.java:238)
> at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:83)
> at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:234)
> at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:133)
> at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:114)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:601)
> at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:188)
> at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:166)
> at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:86)
> at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:101)
> at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:74)
> Caused by: javax.jcr.ItemExistsException: [portal-test] ADD NODE. Item already exists. Condition: parent ID, name, index. []:1[]gadgettokens:1, ID: db7e626b7f0001013865a7c41baa4a6e, ParentID: 00exo0jcr0root0uuid00
> 00000000000. Cause >>>> integrity constraint violation: unique constraint or index violation: JCR_IDX_IPORTALTEST_PARENT: integrity constraint violation: unique constraint or index violation: JCR_IDX_IPORTALTEST_P
> ARENT: [portal-test] ADD NODE. Item already exists. Condition: parent ID, name, index. []:1[]gadgettokens:1, ID: db7e626b7f0001013865a7c41baa4a6e, ParentID: 00exo0jcr0root0uuid0000000000000. Cause >>>> integrity c
> onstraint violation: unique constraint or index violation: JCR_IDX_IPORTALTEST_PARENT: integrity constraint violation: unique constraint or index violation: JCR_IDX_IPORTALTEST_PARENT: integrity constraint violati
> on: unique constraint or index violation: JCR_IDX_IPORTALTEST_PARENT
> at org.exoplatform.services.jcr.impl.core.SessionDataManager.commit(SessionDataManager.java:1565)
> at org.exoplatform.services.jcr.impl.core.ItemImpl.save(ItemImpl.java:706)
> at org.exoplatform.services.jcr.impl.core.SessionImpl.save(SessionImpl.java:1080)
> at org.exoplatform.commons.chromattic.PortalSessionLifeCycle.save(PortalSessionLifeCycle.java:56)
> at org.chromattic.core.jcr.SessionWrapperImpl.save(SessionWrapperImpl.java:274)
> at org.chromattic.core.DomainSessionImpl._save(DomainSessionImpl.java:640)
> at org.chromattic.core.DomainSession.save(DomainSession.java:178)
> ... 34 more
> Caused by: javax.jcr.ItemExistsException: [portal-test] ADD NODE. Item already exists. Condition: parent ID, name, index. []:1[]gadgettokens:1, ID: db7e626b7f0001013865a7c41baa4a6e, ParentID: 00exo0jcr0root0uuid00
> 00000000000. Cause >>>> integrity constraint violation: unique constraint or index violation: JCR_IDX_IPORTALTEST_PARENT: integrity constraint violation: unique constraint or index violation: JCR_IDX_IPORTALTEST_P
> ARENT: integrity constraint violation: unique constraint or index violation: JCR_IDX_IPORTALTEST_PARENT
> at org.exoplatform.services.jcr.impl.storage.jdbc.SQLExceptionHandler.handleAddException(SQLExceptionHandler.java:141)
> at org.exoplatform.services.jcr.impl.storage.jdbc.JDBCStorageConnection.add(JDBCStorageConnection.java:746)
> at org.exoplatform.services.jcr.impl.dataflow.persistent.WorkspacePersistentDataManager.doAdd(WorkspacePersistentDataManager.java:1009)
> at org.exoplatform.services.jcr.impl.dataflow.persistent.WorkspacePersistentDataManager$ChangesLogPersister.save(WorkspacePersistentDataManager.java:662)
> at org.exoplatform.services.jcr.impl.dataflow.persistent.WorkspacePersistentDataManager.save(WorkspacePersistentDataManager.java:333)
> at org.exoplatform.services.jcr.impl.dataflow.persistent.CacheableWorkspaceDataManager.doSave(CacheableWorkspaceDataManager.java:1102)
> at org.exoplatform.services.jcr.impl.dataflow.persistent.CacheableWorkspaceDataManager.access$800(CacheableWorkspaceDataManager.java:93)
> at org.exoplatform.services.jcr.impl.dataflow.persistent.CacheableWorkspaceDataManager$9.run(CacheableWorkspaceDataManager.java:1045)
> at org.exoplatform.services.jcr.impl.dataflow.persistent.CacheableWorkspaceDataManager$9.run(CacheableWorkspaceDataManager.java:1042)
> at org.exoplatform.commons.utils.SecurityHelper.doPrivilegedExceptionAction(SecurityHelper.java:310)
> at org.exoplatform.services.jcr.impl.dataflow.persistent.CacheableWorkspaceDataManager.save(CacheableWorkspaceDataManager.java:1041)
> at org.exoplatform.services.jcr.impl.dataflow.persistent.CacheableWorkspaceDataManager.save(CacheableWorkspaceDataManager.java:1007)
> at org.exoplatform.services.jcr.impl.dataflow.persistent.ShareableSupportedWorkspaceDataManager.save(ShareableSupportedWorkspaceDataManager.java:176)
> at org.exoplatform.services.jcr.impl.dataflow.persistent.VersionableWorkspaceDataManager.save(VersionableWorkspaceDataManager.java:334)
> at org.exoplatform.services.jcr.impl.dataflow.session.TransactionableDataManager.save(TransactionableDataManager.java:471)
> at org.exoplatform.services.jcr.impl.core.SessionDataManager.commit(SessionDataManager.java:1549)
> ... 40 more
> Caused by: java.sql.SQLException: integrity constraint violation: unique constraint or index violation: JCR_IDX_IPORTALTEST_PARENT
> at org.hsqldb.jdbc.Util.sqlException(Unknown Source)
> at org.hsqldb.jdbc.JDBCPreparedStatement.fetchResult(Unknown Source)
> at org.hsqldb.jdbc.JDBCPreparedStatement.executeUpdate(Unknown Source)
> at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:102)
> at org.exoplatform.services.jcr.impl.storage.jdbc.optimisation.db.MultiDbJDBCConnection.addNodeRecord(MultiDbJDBCConnection.java:253)
> at org.exoplatform.services.jcr.impl.storage.jdbc.JDBCStorageConnection.add(JDBCStorageConnection.java:732)
> ... 54 more
> Caused by: org.hsqldb.HsqlException: integrity constraint violation: unique constraint or index violation: JCR_IDX_IPORTALTEST_PARENT
> at org.hsqldb.error.Error.error(Unknown Source)
> at org.hsqldb.index.IndexAVLMemory.insert(Unknown Source)
> at org.hsqldb.persist.RowStoreAVL.indexRow(Unknown Source)
> at org.hsqldb.Table.insertSingleRow(Unknown Source)
> at org.hsqldb.StatementDML.insertSingleRow(Unknown Source)
> at org.hsqldb.StatementInsert.getResult(Unknown Source)
> at org.hsqldb.StatementDMQL.execute(Unknown Source)
> at org.hsqldb.Session.executeCompiledStatement(Unknown Source)
> at org.hsqldb.Session.execute(Unknown Source)
> ... 59 more
> {code}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
12 years, 11 months
[JBoss JIRA] (GTNPC-103) PortletSession.getAttributeMap(APPLICATION_SCOPE) is returning null valued map
by RH Bugzilla Integration (JIRA)
[ https://issues.jboss.org/browse/GTNPC-103?page=com.atlassian.jira.plugin.... ]
RH Bugzilla Integration commented on GTNPC-103:
-----------------------------------------------
Boleslaw Dawidowicz <bdawidow(a)redhat.com> changed the Status of [bug 920547|https://bugzilla.redhat.com/show_bug.cgi?id=920547] from NEW to MODIFIED
> PortletSession.getAttributeMap(APPLICATION_SCOPE) is returning null valued map
> ------------------------------------------------------------------------------
>
> Key: GTNPC-103
> URL: https://issues.jboss.org/browse/GTNPC-103
> Project: GateIn Portlet Container
> Issue Type: Bug
> Components: API
> Affects Versions: 2.4.0.Final
> Reporter: Martin Weiler
> Assignee: Julien Viet
> Fix For: 2.4.1.CR03
>
>
> Calling PortletSession.getAttributeMap(PortletSession.APPLICATION_SCOPE) returns a Map with all application scoped keys, but with NULL values for each key.
> The reason for this is that the scope parameter is not used to look up the attribute values:
> {code:java}
> public Map<String, Object> getAttributeMap(int i)
> {
> Enumeration attributes = getAttributeNames(i);
> Map<String, Object> attrs = new HashMap<String, Object>();
> while (attributes.hasMoreElements())
> {
> String name = (String)attributes.nextElement();
> attrs.put(name, getAttribute(name)); // <== missing scope attribute, should be: getAttribute(name, i)
> }
> return Collections.unmodifiableMap(attrs);
> }
> {code}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
12 years, 11 months
[JBoss JIRA] (GTNPC-103) PortletSession.getAttributeMap(APPLICATION_SCOPE) is returning null valued map
by RH Bugzilla Integration (JIRA)
[ https://issues.jboss.org/browse/GTNPC-103?page=com.atlassian.jira.plugin.... ]
RH Bugzilla Integration commented on GTNPC-103:
-----------------------------------------------
Boleslaw Dawidowicz <bdawidow(a)redhat.com> made a comment on [bug 920547|https://bugzilla.redhat.com/show_bug.cgi?id=920547]
According to JIRA this should be fixed. Will be included in JPP 6.1 ER1
> PortletSession.getAttributeMap(APPLICATION_SCOPE) is returning null valued map
> ------------------------------------------------------------------------------
>
> Key: GTNPC-103
> URL: https://issues.jboss.org/browse/GTNPC-103
> Project: GateIn Portlet Container
> Issue Type: Bug
> Components: API
> Affects Versions: 2.4.0.Final
> Reporter: Martin Weiler
> Assignee: Julien Viet
> Fix For: 2.4.1.CR03
>
>
> Calling PortletSession.getAttributeMap(PortletSession.APPLICATION_SCOPE) returns a Map with all application scoped keys, but with NULL values for each key.
> The reason for this is that the scope parameter is not used to look up the attribute values:
> {code:java}
> public Map<String, Object> getAttributeMap(int i)
> {
> Enumeration attributes = getAttributeNames(i);
> Map<String, Object> attrs = new HashMap<String, Object>();
> while (attributes.hasMoreElements())
> {
> String name = (String)attributes.nextElement();
> attrs.put(name, getAttribute(name)); // <== missing scope attribute, should be: getAttribute(name, i)
> }
> return Collections.unmodifiableMap(attrs);
> }
> {code}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
12 years, 11 months