JBoss Portal SVN: r13267 - branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests.
by portal-commits@lists.jboss.org
Author: vrockai
Date: 2009-04-24 07:12:08 -0400 (Fri, 24 Apr 2009)
New Revision: 13267
Modified:
branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/build.xml
Log:
[selenium] - windows ant target hack
Modified: branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/build.xml
===================================================================
--- branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/build.xml 2009-04-23 16:49:20 UTC (rev 13266)
+++ branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/build.xml 2009-04-24 11:12:08 UTC (rev 13267)
@@ -135,7 +135,7 @@
</target>
- <target name="run-and-build" depends="init, compile, run-src">
+ <target name="run-and-build" depends="init, compile, copyApps">
<echo message="Starting portal instance : ${portal.instance}" />
<server:start name="${portal.instance}" />
15 years
JBoss Portal SVN: r13266 - in modules: jopr-plugin and 28 other directories.
by portal-commits@lists.jboss.org
Author: chris.laprun(a)jboss.com
Date: 2009-04-23 12:49:20 -0400 (Thu, 23 Apr 2009)
New Revision: 13266
Added:
modules/jopr-plugin/
modules/jopr-plugin/trunk/
modules/jopr-plugin/trunk/build/
modules/jopr-plugin/trunk/build/licences/
modules/jopr-plugin/trunk/build/licences/JBossEULA.txt
modules/jopr-plugin/trunk/build/misc/
modules/jopr-plugin/trunk/build/misc/codeguide.html
modules/jopr-plugin/trunk/build/pom.xml
modules/jopr-plugin/trunk/plugin/
modules/jopr-plugin/trunk/plugin/pom.xml
modules/jopr-plugin/trunk/plugin/src/
modules/jopr-plugin/trunk/plugin/src/main/
modules/jopr-plugin/trunk/plugin/src/main/assemble/
modules/jopr-plugin/trunk/plugin/src/main/assemble/portal-management-sar.xml
modules/jopr-plugin/trunk/plugin/src/main/java/
modules/jopr-plugin/trunk/plugin/src/main/java/org/
modules/jopr-plugin/trunk/plugin/src/main/java/org/jboss/
modules/jopr-plugin/trunk/plugin/src/main/java/org/jboss/portal/
modules/jopr-plugin/trunk/plugin/src/main/java/org/jboss/portal/jopr/
modules/jopr-plugin/trunk/plugin/src/main/java/org/jboss/portal/jopr/PortalComponent.java
modules/jopr-plugin/trunk/plugin/src/main/java/org/jboss/portal/jopr/PortalDiscovery.java
modules/jopr-plugin/trunk/plugin/src/main/java/org/jboss/portal/jopr/PortalEventPoller.java
modules/jopr-plugin/trunk/plugin/src/main/resources/
modules/jopr-plugin/trunk/plugin/src/main/resources/META-INF/
modules/jopr-plugin/trunk/plugin/src/main/resources/META-INF/rhq-plugin.xml
modules/jopr-plugin/trunk/pom.xml
modules/jopr-plugin/trunk/portal-management-service/
modules/jopr-plugin/trunk/portal-management-service/pom.xml
modules/jopr-plugin/trunk/portal-management-service/src/
modules/jopr-plugin/trunk/portal-management-service/src/main/
modules/jopr-plugin/trunk/portal-management-service/src/main/resources/
modules/jopr-plugin/trunk/portal-management-service/src/main/resources/META-INF/
modules/jopr-plugin/trunk/portal-management-service/src/main/resources/META-INF/jboss-service.xml
modules/jopr-plugin/trunk/portal-management/
modules/jopr-plugin/trunk/portal-management/pom.xml
modules/jopr-plugin/trunk/portal-management/src/
modules/jopr-plugin/trunk/portal-management/src/main/
modules/jopr-plugin/trunk/portal-management/src/main/java/
modules/jopr-plugin/trunk/portal-management/src/main/java/org/
modules/jopr-plugin/trunk/portal-management/src/main/java/org/jboss/
modules/jopr-plugin/trunk/portal-management/src/main/java/org/jboss/portal/
modules/jopr-plugin/trunk/portal-management/src/main/java/org/jboss/portal/management/
modules/jopr-plugin/trunk/portal-management/src/main/java/org/jboss/portal/management/Portal.java
modules/jopr-plugin/trunk/portal-management/src/main/java/org/jboss/portal/management/PortalImpl.java
modules/jopr-plugin/trunk/portal-management/src/main/java/org/jboss/portal/management/PortletDiscoveryService.java
modules/jopr-plugin/trunk/portal-management/src/main/java/org/jboss/portal/management/WSRPPortletManagement.java
Log:
Initial import of JOPR plugin. Still needs a lot of work but the project is setup now.
Added: modules/jopr-plugin/trunk/build/licences/JBossEULA.txt
===================================================================
--- modules/jopr-plugin/trunk/build/licences/JBossEULA.txt (rev 0)
+++ modules/jopr-plugin/trunk/build/licences/JBossEULA.txt 2009-04-23 16:49:20 UTC (rev 13266)
@@ -0,0 +1,106 @@
+LICENSE AGREEMENT
+JBOSS(r)
+
+This License Agreement governs the use of the Software Packages and any updates to the Software
+Packages, regardless of the delivery mechanism. Each Software Package is a collective work
+under U.S. Copyright Law. Subject to the following terms, Red Hat, Inc. ("Red Hat") grants to
+the user ("Client") a license to the applicable collective work(s) pursuant to the
+GNU Lesser General Public License v. 2.1 except for the following Software Packages:
+(a) JBoss Portal Forums and JBoss Transactions JTS, each of which is licensed pursuant to the
+GNU General Public License v.2;
+
+(b) JBoss Rules, which is licensed pursuant to the Apache License v.2.0;
+
+(c) an optional download for JBoss Cache for the Berkeley DB for Java database, which is licensed under the
+(open source) Sleepycat License (if Client does not wish to use the open source version of this database,
+it may purchase a license from Sleepycat Software);
+
+and (d) the BPEL extension for JBoss jBPM, which is licensed under the Common Public License v.1,
+and, pursuant to the OASIS BPEL4WS standard, requires parties wishing to redistribute to enter various
+royalty-free patent licenses.
+
+Each of the foregoing licenses is available at http://www.opensource.org/licenses/index.php.
+
+1. The Software. "Software Packages" refer to the various software modules that are created and made available
+for distribution by the JBoss.org open source community at http://www.jboss.org. Each of the Software Packages
+may be comprised of hundreds of software components. The end user license agreement for each component is located in
+the component's source code. With the exception of certain image files identified in Section 2 below,
+the license terms for the components permit Client to copy, modify, and redistribute the component,
+in both source code and binary code forms. This agreement does not limit Client's rights under,
+or grant Client rights that supersede, the license terms of any particular component.
+
+2. Intellectual Property Rights. The Software Packages are owned by Red Hat and others and are protected under copyright
+and other laws. Title to the Software Packages and any component, or to any copy, modification, or merged portion shall
+remain with the aforementioned, subject to the applicable license. The "JBoss" trademark, "Red Hat" trademark, the
+individual Software Package trademarks, and the "Shadowman" logo are registered trademarks of Red Hat and its affiliates
+in the U.S. and other countries. This agreement permits Client to distribute unmodified copies of the Software Packages
+using the Red Hat trademarks that Red Hat has inserted in the Software Packages on the condition that Client follows Red Hat's
+trademark guidelines for those trademarks located at http://www.redhat.com/about/corporate/trademark/. Client must abide by
+these trademark guidelines when distributing the Software Packages, regardless of whether the Software Packages have been modified.
+If Client modifies the Software Packages, then Client must replace all Red Hat trademarks and logos identified at
+http://www.jboss.com/company/logos, unless a separate agreement with Red Hat is executed or other permission granted.
+Merely deleting the files containing the Red Hat trademarks may corrupt the Software Packages.
+
+3. Limited Warranty. Except as specifically stated in this Paragraph 3 or a license for a particular
+component, to the maximum extent permitted under applicable law, the Software Packages and the
+components are provided and licensed "as is" without warranty of any kind, expressed or implied,
+including the implied warranties of merchantability, non-infringement or fitness for a particular purpose.
+Red Hat warrants that the media on which Software Packages may be furnished will be free from defects in
+materials and manufacture under normal use for a period of 30 days from the date of delivery to Client.
+Red Hat does not warrant that the functions contained in the Software Packages will meet Client's requirements
+or that the operation of the Software Packages will be entirely error free or appear precisely as described
+in the accompanying documentation. This warranty extends only to the party that purchases the Services
+pertaining to the Software Packages from Red Hat or a Red Hat authorized distributor.
+
+4. Limitation of Remedies and Liability. To the maximum extent permitted by applicable law, the remedies
+described below are accepted by Client as its only remedies. Red Hat's entire liability, and Client's
+exclusive remedies, shall be: If the Software media is defective, Client may return it within 30 days of
+delivery along with a copy of Client's payment receipt and Red Hat, at its option, will replace it or
+refund the money paid by Client for the Software. To the maximum extent permitted by applicable law,
+Red Hat or any Red Hat authorized dealer will not be liable to Client for any incidental or consequential
+damages, including lost profits or lost savings arising out of the use or inability to use the Software,
+even if Red Hat or such dealer has been advised of the possibility of such damages. In no event shall
+Red Hat's liability under this agreement exceed the amount that Client paid to Red Hat under this
+Agreement during the twelve months preceding the action.
+
+5. Export Control. As required by U.S. law, Client represents and warrants that it:
+(a) understands that the Software Packages are subject to export controls under the
+U.S. Commerce Department's Export Administration Regulations ("EAR");
+
+(b) is not located in a prohibited destination country under the EAR or U.S. sanctions regulations
+(currently Cuba, Iran, Iraq, Libya, North Korea, Sudan and Syria);
+
+(c) will not export, re-export, or transfer the Software Packages to any prohibited destination, entity,
+or individual without the necessary export license(s) or authorizations(s) from the U.S. Government;
+
+(d) will not use or transfer the Software Packages for use in any sensitive nuclear, chemical or
+biological weapons, or missile technology end-uses unless authorized by the U.S. Government by
+regulation or specific license;
+
+(e) understands and agrees that if it is in the United States and exports or transfers the Software
+Packages to eligible end users, it will, as required by EAR Section 740.17(e), submit semi-annual
+reports to the Commerce Department's Bureau of Industry & Security (BIS), which include the name and
+address (including country) of each transferee;
+
+and (f) understands that countries other than the United States may restrict the import, use, or
+export of encryption products and that it shall be solely responsible for compliance with any such
+import, use, or export restrictions.
+
+6. Third Party Programs. Red Hat may distribute third party software programs with the Software Packages
+that are not part of the Software Packages and which Client must install separately. These third party
+programs are subject to their own license terms. The license terms either accompany the programs or
+can be viewed at http://www.redhat.com/licenses/. If Client does not agree to abide by the applicable
+license terms for such programs, then Client may not install them. If Client wishes to install the programs
+on more than one system or transfer the programs to another party, then Client must contact the licensor
+of the programs.
+
+7. General. If any provision of this agreement is held to be unenforceable, that shall not affect the
+enforceability of the remaining provisions. This License Agreement shall be governed by the laws of the
+State of North Carolina and of the United States, without regard to any conflict of laws provisions,
+except that the United Nations Convention on the International Sale of Goods shall not apply.
+
+Copyright 2006 Red Hat, Inc. All rights reserved.
+"JBoss" and the JBoss logo are registered trademarks of Red Hat, Inc.
+All other trademarks are the property of their respective owners.
+
+ Page 1 of 1 18 October 2006
Added: modules/jopr-plugin/trunk/build/misc/codeguide.html
===================================================================
--- modules/jopr-plugin/trunk/build/misc/codeguide.html (rev 0)
+++ modules/jopr-plugin/trunk/build/misc/codeguide.html 2009-04-23 16:49:20 UTC (rev 13266)
@@ -0,0 +1,133 @@
+<html>
+
+<head>
+<style type="text/css">
+pre { border-style:solid; border-width:thin; padding:5px; background-color:#EEEEFF;}
+span.bad { text-decoration:line-through; }
+span.important { font-weight:bold; color:red; }
+</style>
+</head>
+
+<body>
+
+<h2>Coding Conventions</h2>
+
+<h3>Some more general guidelines</h3>
+<ul>
+<li>Fully qualified imports should be used, rather than importing x.y.*.</li>
+<li>Use newlines for opening braces, so that the top and bottom braces can be visually matched.</li>
+<li>Aid visual separation of logical steps by introducing newlines and appropriate comments above them.</li>
+</ul>
+
+
+<h3>A class that conforms to JBoss coding guidelines</h3>
+
+<pre>
+/******************************************************************************
+ * JBoss, a division of Red Hat *
+ * Copyright 2007, Red Hat Middleware, LLC, and individual *
+ * contributors as indicated by the @authors tag. See the *
+ * copyright.txt in the distribution for a full listing of *
+ * individual contributors. *
+ * *
+ * This is free software; you can redistribute it and/or modify it *
+ * under the terms of the GNU Lesser General Public License as *
+ * published by the Free Software Foundation; either version 2.1 of *
+ * the License, or (at your option) any later version. *
+ * *
+ * This software is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
+ * Lesser General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Lesser General Public *
+ * License along with this software; if not, write to the Free *
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA *
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org. *
+ ******************************************************************************/
+package x;
+
+// <span class="important">Explicit imports</span>
+import a.b.C1; // <span class="important">good</span>
+import a.b.C2;
+import a.b.C3;
+
+// <span class="important">Do not write</span>
+<span class="bad">import a.b.*;</span> // <span class="important">bad</span>
+
+// <span class="important">DO NOT USE "TAB" TO INDENT CODE USE *3* SPACES FOR PORTABILITY AMONG EDITORS</span>
+
+/**
+ * A description of this class.
+ *
+ * @see SomeRelatedClass.
+ *
+ * @version <tt>$Revision: 7755 $</tt>
+ * @author <a href="mailto:{email}">{full name}</a>
+ */
+public class X
+ extends Y
+ implements Z
+{
+ public void startService() throws Exception
+ {
+ // Use the newline for the opening bracket so we can match top
+ // and bottom bracket visually
+
+ Class cls = Class.forName(dataSourceClass);
+ vendorSource = (XADataSource)cls.newInstance();
+
+ // Jump a line between logically distinct <span class="important">steps</span> and add<
+ // line of comment to it
+ cls = vendorSource.getClass();
+
+ // Comment lines <span class="important">always</span> start with an uppercase
+ // except if it is the second line
+ if(properties != null)
+ {
+
+ try
+ {
+ }
+ catch (IOException ioe)
+ {
+ }
+ for (Iterator i = props.entrySet().iterator(); i.hasNext();)
+ {
+
+ // Get the name and value for the attributes
+ Map.Entry entry = (Map.Entry) i.next();
+ String attributeName = (String) entry.getKey();
+ String attributeValue = (String) entry.getValue();
+
+ // Print the debug message
+ log.debug("Setting attribute '" + attributeName + "' to '" + attributeValue + "'");
+
+ // get the attribute
+ Method setAttribute =
+ cls.getMethod("set" + attributeName, new Class[] { String.class });
+
+ // And set the value
+ setAttribute.invoke(vendorSource, new Object[] { attributeValue });
+ }
+ }
+
+ <span class="bad">// this is a <span class="important">bad</span> comment line because it starts with a lower case</span>
+ vendorSource.getXAConnection().close();
+
+ // Bind in JNDI
+ bind(new InitialContext(), "java:/"+getPoolName(),
+ new Reference(vendorSource.getClass().getName(),
+ getClass().getName(), null));
+
+ // Block must always be delimited explicitely
+ if (0 == 0)
+ <span class="important">{</span>
+ System.out.println(true);
+ <span class="important">}</span>
+
+ }
+}
+</pre>
+</body>
+</html>
Property changes on: modules/jopr-plugin/trunk/build/misc/codeguide.html
___________________________________________________________________
Name: svn:executable
+ *
Added: modules/jopr-plugin/trunk/build/pom.xml
===================================================================
--- modules/jopr-plugin/trunk/build/pom.xml (rev 0)
+++ modules/jopr-plugin/trunk/build/pom.xml 2009-04-23 16:49:20 UTC (rev 13266)
@@ -0,0 +1,137 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This pom functions as a default configuration. The subproject
+ poms each inherit configuration from this one.
+
+ When adding version information for an artifact please do the following
+ - add a version property for the specific version
+ - add a dependency in the dependencyManagement section which refers to
+ the property
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <groupId>org.jboss.portal</groupId>
+ <artifactId>jboss-portal-parent</artifactId>
+ <version>1.0.0</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.jboss.portal.jopr</groupId>
+ <artifactId>module-parent</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ <packaging>pom</packaging>
+ <name>JBoss Portal JOPR Plugin Parent</name>
+ <description>JBoss Portal JOPR Plugin</description>
+
+ <!--All artifacts versions should be defined here-->
+ <properties>
+ <version.commons.logging>1.1</version.commons.logging>
+ <version.rhq>1.2.0.Beta1</version.rhq>
+ <version.portal>2.7.1.GA</version.portal>
+ <version.portlet>trunk-SNAPSHOT</version.portlet>
+ <version.jboss>4.2.3.GA</version.jboss>
+ </properties>
+
+
+ <!--JBoss reporitories to be able to grab jboss-portal-parent pom-->
+ <repositories>
+ <repository>
+ <id>repository.jboss.org</id>
+ <name>JBoss Repository</name>
+ <layout>default</layout>
+ <url>http://repository.jboss.org/maven2/</url>
+ <snapshots>
+ <enabled>false</enabled>
+ </snapshots>
+ </repository>
+ <repository>
+ <id>snapshots.jboss.org</id>
+ <name>JBoss Snapshots Repository</name>
+ <layout>default</layout>
+ <url>http://snapshots.jboss.org/maven2/</url>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ <releases>
+ <enabled>false</enabled>
+ </releases>
+ </repository>
+ </repositories>
+
+
+ <!--Sample additional plugin repository. This one is not needed if you don't use maven-antrun-extended-plugin
+ (used in module-c)-->
+ <pluginRepositories>
+ <pluginRepository>
+ <id>java.net maven repository</id>
+ <url>http://download.java.net/maven/2/</url>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ </pluginRepository>
+ </pluginRepositories>
+
+ <dependencyManagement>
+ <!-- The parent pom manages the inter-dependencies of the modules. -->
+ <dependencies>
+ <dependency>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ <version>${version.commons.logging}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.rhq</groupId>
+ <artifactId>rhq-core-domain</artifactId>
+ <version>${version.rhq}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.rhq</groupId>
+ <artifactId>rhq-core-plugin-api</artifactId>
+ <version>${version.rhq}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.rhq</groupId>
+ <artifactId>rhq-core-native-system</artifactId>
+ <version>${version.rhq}</version>
+ </dependency>
+
+ <!-- add your dependencies here -->
+ <dependency>
+ <groupId>org.jboss.portal.core</groupId>
+ <artifactId>core</artifactId>
+ <version>${version.portal}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.portal.core</groupId>
+ <artifactId>jems</artifactId>
+ <version>${version.portal}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.portal.core</groupId>
+ <artifactId>server</artifactId>
+ <version>${version.portal}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.portal.portlet</groupId>
+ <artifactId>portlet-management</artifactId>
+ <version>${version.portlet}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.portal.portlet</groupId>
+ <artifactId>portlet-federation</artifactId>
+ <version>${version.portlet}</version>
+ </dependency>
+ <dependency>
+ <groupId>jboss</groupId>
+ <artifactId>jboss-system</artifactId>
+ <version>${version.jboss}</version>
+ </dependency>
+ <dependency>
+ <groupId>jboss</groupId>
+ <artifactId>jboss-common</artifactId>
+ <version>${version.jboss}</version>
+ </dependency>
+ </dependencies>
+ </dependencyManagement>
+
+</project>
Added: modules/jopr-plugin/trunk/plugin/pom.xml
===================================================================
--- modules/jopr-plugin/trunk/plugin/pom.xml (rev 0)
+++ modules/jopr-plugin/trunk/plugin/pom.xml 2009-04-23 16:49:20 UTC (rev 13266)
@@ -0,0 +1,70 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <groupId>org.jboss.portal.jopr</groupId>
+ <artifactId>module-parent</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ <relativePath>../build/pom.xml</relativePath>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>plugin</artifactId>
+ <packaging>jar</packaging>
+ <name>JBoss Portal JOPR Plugin</name>
+
+ <dependencies>
+ <dependency>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.rhq</groupId>
+ <artifactId>rhq-core-domain</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.rhq</groupId>
+ <artifactId>rhq-core-plugin-api</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.rhq</groupId>
+ <artifactId>rhq-core-native-system</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.portal.core</groupId>
+ <artifactId>jems</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.portal.core</groupId>
+ <artifactId>server</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>jboss</groupId>
+ <artifactId>jboss-system</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.portal.jopr</groupId>
+ <artifactId>portal-management</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+ <!-- won't compile otherwise due to reliance of JOPR plugin API on hibernate/JPA annotations -->
+ <dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-annotations</artifactId>
+ <version>3.3.1.GA</version>
+ </dependency>
+
+ </dependencies>
+
+ <!--<build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>1.5</source>
+ <target>1.5</target>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>-->
+
+</project>
\ No newline at end of file
Added: modules/jopr-plugin/trunk/plugin/src/main/assemble/portal-management-sar.xml
===================================================================
--- modules/jopr-plugin/trunk/plugin/src/main/assemble/portal-management-sar.xml (rev 0)
+++ modules/jopr-plugin/trunk/plugin/src/main/assemble/portal-management-sar.xml 2009-04-23 16:49:20 UTC (rev 13266)
@@ -0,0 +1,58 @@
+<assembly>
+ <id>server</id>
+ <formats>
+ <format>war</format>
+ </formats>
+ <includeBaseDirectory>false</includeBaseDirectory>
+
+ <fileSets>
+
+ <fileSet>
+ <file>src/main/resources/META-INF/jboss-service.xml</file>
+ <outputDirectory></outputDirectory>
+ </fileSet>
+
+ <fileSet>
+ <directory>target/classes</directory>
+ <outputDirectory>WEB-INF/classes</outputDirectory>
+ </fileSet>
+
+ </fileSets>
+
+ <!--<dependencySets>
+
+
+ <dependencySet>
+ <outputDirectory>WEB-INF/lib</outputDirectory>
+ <includes>
+
+ <include>org.jboss.portal.common:common-common</include>
+ <include>org.jboss.portal.common:common-portal</include>
+ <include>org.jboss.portal.common:common-mc</include>
+ <include>org.jboss.portal.web:web-web</include>
+ <include>org.jboss.portal.portlet:portlet-portlet</include>
+ <include>org.jboss.portal.portlet:portlet-controller</include>
+ <include>org.jboss.portal.portlet:portlet-mc</include>
+ <include>org.jboss.portal.portlet:portlet-samples</include>
+ <include>org.jboss.portal.presentation:presentation-presentation</include>
+
+ <include>org.jboss.portal.presentation:presentation-classic</include>
+
+ <include>org.jboss.portal.presentation:presentation-ajax</include >
+ <include>com.google.gwt:gwt-servlet</include>
+
+ <include>javax.ccpp:ccpp</include>
+ <include>javax.portlet:portlet-api</include>
+
+ <include>org.jboss:jboss-common-core</include>
+ <include>org.jboss.microcontainer:jboss-kernel</include>
+ <include>org.jboss.microcontainer:jboss-dependency</include>
+ <include>org.jboss:jboss-reflect</include>
+ <include>org.jboss:jboss-mdr</include>
+ <include>org.jboss:jbossxb</include>
+
+ </includes>
+ </dependencySet>
+ </dependencySets>-->
+
+</assembly>
Added: modules/jopr-plugin/trunk/plugin/src/main/java/org/jboss/portal/jopr/PortalComponent.java
===================================================================
--- modules/jopr-plugin/trunk/plugin/src/main/java/org/jboss/portal/jopr/PortalComponent.java (rev 0)
+++ modules/jopr-plugin/trunk/plugin/src/main/java/org/jboss/portal/jopr/PortalComponent.java 2009-04-23 16:49:20 UTC (rev 13266)
@@ -0,0 +1,237 @@
+/******************************************************************************
+ * JBoss, a division of Red Hat *
+ * Copyright 2006, Red Hat Middleware, LLC, and individual *
+ * contributors as indicated by the @authors tag. See the *
+ * copyright.txt in the distribution for a full listing of *
+ * individual contributors. *
+ * *
+ * This is free software; you can redistribute it and/or modify it *
+ * under the terms of the GNU Lesser General Public License as *
+ * published by the Free Software Foundation; either version 2.1 of *
+ * the License, or (at your option) any later version. *
+ * *
+ * This software is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
+ * Lesser General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Lesser General Public *
+ * License along with this software; if not, write to the Free *
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA *
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org. *
+ ******************************************************************************/
+
+package org.jboss.portal.jopr;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.jboss.portal.jems.as.JMX;
+import org.jboss.portal.server.Server;
+import org.jboss.portal.management.Portal;
+import org.jboss.mx.util.MBeanServerLocator;
+import org.rhq.core.domain.configuration.Configuration;
+import org.rhq.core.domain.measurement.AvailabilityType;
+import org.rhq.core.domain.measurement.MeasurementDataNumeric;
+import org.rhq.core.domain.measurement.MeasurementReport;
+import org.rhq.core.domain.measurement.MeasurementScheduleRequest;
+import org.rhq.core.pluginapi.configuration.ConfigurationFacet;
+import org.rhq.core.pluginapi.configuration.ConfigurationUpdateReport;
+import org.rhq.core.pluginapi.event.EventContext;
+import org.rhq.core.pluginapi.inventory.CreateChildResourceFacet;
+import org.rhq.core.pluginapi.inventory.CreateResourceReport;
+import org.rhq.core.pluginapi.inventory.DeleteResourceFacet;
+import org.rhq.core.pluginapi.inventory.InvalidPluginConfigurationException;
+import org.rhq.core.pluginapi.inventory.ResourceComponent;
+import org.rhq.core.pluginapi.inventory.ResourceContext;
+import org.rhq.core.pluginapi.measurement.MeasurementFacet;
+import org.rhq.core.pluginapi.operation.OperationContext;
+import org.rhq.core.pluginapi.operation.OperationFacet;
+import org.rhq.core.pluginapi.operation.OperationResult;
+
+import javax.management.ObjectName;
+import javax.management.MalformedObjectNameException;
+import javax.management.MBeanServer;
+import java.util.Set;
+
+
+public class PortalComponent implements ResourceComponent, MeasurementFacet, OperationFacet, ConfigurationFacet,
+ CreateChildResourceFacet, DeleteResourceFacet
+{
+ private final Log log = LogFactory.getLog(this.getClass());
+
+ private static final int CHANGEME = 1; // TODO remove or change this
+
+
+ public static final String DUMMY_EVENT = "portal-jopr-pluginDummyEvent"; // Same as in Plugin-Descriptor
+
+ EventContext eventContext;
+
+ private static final String PORTAL_SERVICE_SERVER = "portal:service=Server";
+ private Server portalServer;
+
+ private static final String PORTAL_MANAGEMENT_SERVICE = "portal.management:service=Management,type=Portal,name=Default";
+ private Portal portal;
+
+
+ /**
+ * Return availability of this resource
+ *
+ * @see org.rhq.core.pluginapi.inventory.ResourceComponent#getAvailability()
+ */
+ public AvailabilityType getAvailability()
+ {
+ return isRegistered(PORTAL_SERVICE_SERVER) ? AvailabilityType.UP : AvailabilityType.DOWN;
+ }
+
+
+ /**
+ * Start the resource connection
+ *
+ * @see org.rhq.core.pluginapi.inventory.ResourceComponent#start(org.rhq.core.pluginapi.inventory.ResourceContext)
+ */
+ public void start(ResourceContext context) throws InvalidPluginConfigurationException, Exception
+ {
+
+ Configuration conf = context.getPluginConfiguration();
+
+ portalServer = (Server) JMX.getMBeanProxy(Server.class, PORTAL_SERVICE_SERVER);
+
+ portal = (Portal) JMX.getMBeanProxy(Portal.class, PORTAL_MANAGEMENT_SERVICE);
+
+ eventContext = context.getEventContext();
+ PortalEventPoller eventPoller = new PortalEventPoller();
+ eventContext.registerEventPoller(eventPoller, 60);
+
+ }
+
+
+ /**
+ * Tear down the rescource connection
+ *
+ * @see org.rhq.core.pluginapi.inventory.ResourceComponent#stop()
+ */
+ public void stop()
+ {
+
+
+ eventContext.unregisterEventPoller(DUMMY_EVENT);
+ }
+
+
+ /**
+ * Gather measurement data
+ *
+ * @see org.rhq.core.pluginapi.measurement.MeasurementFacet#getValues(org.rhq.core.domain.measurement.MeasurementReport,
+ * java.util.Set)
+ */
+ public void getValues(MeasurementReport report, Set<MeasurementScheduleRequest> metrics) throws Exception
+ {
+
+ for (MeasurementScheduleRequest req : metrics)
+ {
+ if (req.getName().equals("portletNumber"))
+ {
+ MeasurementDataNumeric res = new MeasurementDataNumeric(req, Double.valueOf(CHANGEME));
+ report.addData(res);
+ }
+ // TODO add more metrics here
+ }
+ }
+
+
+ public void startOperationFacet(OperationContext context)
+ {
+
+ }
+
+
+ /**
+ * Invokes the passed operation on the managed resource
+ *
+ * @param name Name of the operation
+ * @param params The method parameters
+ * @returns An operation result
+ */
+ public OperationResult invokeOperation(String name, Configuration params) throws Exception
+ {
+
+ OperationResult res = new OperationResult();
+ if ("dummyOperation".equals(name))
+ {
+ // TODO implement me
+
+ }
+ return res;
+ }
+
+
+ /**
+ * Load the configuration from a resource into the configuration
+ *
+ * @return The configuration of the resource
+ * @see org.rhq.core.pluginapi.configuration.ConfigurationFacet
+ */
+ public Configuration loadResourceConfiguration()
+ {
+ // TODO supply code to load the configuration from the resource into the plugin
+ return null;
+ }
+
+ /**
+ * Write down the passed configuration into the resource
+ *
+ * @param report The configuration updated by the server
+ * @see org.rhq.core.pluginapi.configuration.ConfigurationFacet
+ */
+ public void updateResourceConfiguration(ConfigurationUpdateReport report)
+ {
+ // TODO supply code to update the passed report into the resource
+ }
+
+ /**
+ * Create a child resource
+ *
+ * @see org.rhq.core.pluginapi.inventory.CreateChildResourceFacet
+ */
+ public CreateResourceReport createResource(CreateResourceReport report)
+ {
+ // TODO supply code to create a child resource
+
+ return null; // TODO change this
+ }
+
+ /**
+ * Delete a child resource
+ *
+ * @see org.rhq.core.pluginapi.inventory.DeleteResourceFacet
+ */
+ public void deleteResource() throws Exception
+ {
+ // TODO supply code to delete a child resource
+ }
+
+ private static ObjectName createObjectName(String name)
+ {
+ ObjectName objecName;
+ try
+ {
+ objecName = new ObjectName(name);
+ }
+ catch (MalformedObjectNameException e)
+ {
+ throw new IllegalArgumentException("'" + name + "' is not a valid ObjectName");
+ }
+ return objecName;
+ }
+
+ public static boolean isRegistered(String name)
+ {
+ MBeanServer server = MBeanServerLocator.locateJBoss();
+ return server.isRegistered(createObjectName(name));
+ }
+
+ public String getVersion()
+ {
+ return portalServer.getVersion().toString();
+ }
+}
\ No newline at end of file
Added: modules/jopr-plugin/trunk/plugin/src/main/java/org/jboss/portal/jopr/PortalDiscovery.java
===================================================================
--- modules/jopr-plugin/trunk/plugin/src/main/java/org/jboss/portal/jopr/PortalDiscovery.java (rev 0)
+++ modules/jopr-plugin/trunk/plugin/src/main/java/org/jboss/portal/jopr/PortalDiscovery.java 2009-04-23 16:49:20 UTC (rev 13266)
@@ -0,0 +1,65 @@
+/******************************************************************************
+ * JBoss, a division of Red Hat *
+ * Copyright 2006, Red Hat Middleware, LLC, and individual *
+ * contributors as indicated by the @authors tag. See the *
+ * copyright.txt in the distribution for a full listing of *
+ * individual contributors. *
+ * *
+ * This is free software; you can redistribute it and/or modify it *
+ * under the terms of the GNU Lesser General Public License as *
+ * published by the Free Software Foundation; either version 2.1 of *
+ * the License, or (at your option) any later version. *
+ * *
+ * This software is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
+ * Lesser General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Lesser General Public *
+ * License along with this software; if not, write to the Free *
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA *
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org. *
+ ******************************************************************************/
+
+package org.jboss.portal.jopr;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.rhq.core.pluginapi.inventory.DiscoveredResourceDetails;
+import org.rhq.core.pluginapi.inventory.ResourceDiscoveryComponent;
+import org.rhq.core.pluginapi.inventory.ResourceDiscoveryContext;
+import org.jboss.portal.jopr.PortalComponent;
+
+import java.util.HashSet;
+import java.util.Set;
+
+
+/** Discovery class */
+public class PortalDiscovery implements ResourceDiscoveryComponent<PortalComponent>
+{
+ private final Log log = LogFactory.getLog(this.getClass());
+
+
+ /** Run the discovery */
+ public Set<DiscoveredResourceDetails> discoverResources(ResourceDiscoveryContext<PortalComponent> discoveryContext) throws Exception
+ {
+
+ Set<DiscoveredResourceDetails> discoveredResources = new HashSet<DiscoveredResourceDetails>();
+
+ /**
+ * A discovered resource must have a unique key, that must
+ * stay the same when the resource is discovered the next
+ * time
+ */
+ DiscoveredResourceDetails detail = new DiscoveredResourceDetails(discoveryContext.getResourceType(), "Portal",
+ discoveryContext.getParentResourceComponent().getVersion(), "1.0.0.Alpha1", "Monitoring of JBoss Portal resources", null, null);
+
+
+ // Add to return values
+ discoveredResources.add(detail);
+ log.info("Discovered new Portal");
+
+ return discoveredResources;
+
+ }
+}
\ No newline at end of file
Added: modules/jopr-plugin/trunk/plugin/src/main/java/org/jboss/portal/jopr/PortalEventPoller.java
===================================================================
--- modules/jopr-plugin/trunk/plugin/src/main/java/org/jboss/portal/jopr/PortalEventPoller.java (rev 0)
+++ modules/jopr-plugin/trunk/plugin/src/main/java/org/jboss/portal/jopr/PortalEventPoller.java 2009-04-23 16:49:20 UTC (rev 13266)
@@ -0,0 +1,73 @@
+/******************************************************************************
+ * JBoss, a division of Red Hat *
+ * Copyright 2006, Red Hat Middleware, LLC, and individual *
+ * contributors as indicated by the @authors tag. See the *
+ * copyright.txt in the distribution for a full listing of *
+ * individual contributors. *
+ * *
+ * This is free software; you can redistribute it and/or modify it *
+ * under the terms of the GNU Lesser General Public License as *
+ * published by the Free Software Foundation; either version 2.1 of *
+ * the License, or (at your option) any later version. *
+ * *
+ * This software is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
+ * Lesser General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Lesser General Public *
+ * License along with this software; if not, write to the Free *
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA *
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org. *
+ ******************************************************************************/
+
+package org.jboss.portal.jopr;
+
+
+import org.rhq.core.domain.event.Event;
+import org.rhq.core.pluginapi.event.EventPoller;
+import org.jboss.portal.jopr.PortalComponent;
+
+import java.util.HashSet;
+import java.util.Set;
+
+
+public class PortalEventPoller implements EventPoller
+{
+
+ public PortalEventPoller()
+ {
+
+ }
+
+
+ /**
+ * Return the type of events we handle
+ *
+ * @see org.rhq.core.pluginapi.event.EventPoller#getEventType()
+ */
+ public String getEventType()
+ {
+ return PortalComponent.DUMMY_EVENT;
+ }
+
+
+ /**
+ * Return collected events
+ *
+ * @see org.rhq.core.pluginapi.event.EventPoller#poll()
+ */
+ public Set<Event> poll()
+ {
+ Set<Event> eventSet = new HashSet<Event>();
+ // TODO add your events here. Below is an example that
+ /*
+ synchronized (events) {
+ eventSet.addAll(events);
+ events.clear();
+ }
+ */
+ return eventSet;
+ }
+
+}
\ No newline at end of file
Added: modules/jopr-plugin/trunk/plugin/src/main/resources/META-INF/rhq-plugin.xml
===================================================================
--- modules/jopr-plugin/trunk/plugin/src/main/resources/META-INF/rhq-plugin.xml (rev 0)
+++ modules/jopr-plugin/trunk/plugin/src/main/resources/META-INF/rhq-plugin.xml 2009-04-23 16:49:20 UTC (rev 13266)
@@ -0,0 +1,35 @@
+<?xml version="1.0"?>
+<plugin name="portal-jopr-plugin"
+ displayName="JBossPortalPlugin"
+ package="org.jboss.portal.jopr.plugin"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="urn:xmlns:rhq-plugin"
+ xmlns:c="urn:xmlns:rhq-configuration">
+
+
+ <server name="portal-jopr-plugin"
+ discovery="PortalDiscovery"
+ class="PortalComponent"
+ singleton="true"
+ supportsManualAdd="true"
+ createDeletePolicy="both">
+
+ <!--<plugin-configuration>
+ --><!-- TODO add your own here --><!--
+ </plugin-configuration>-->
+
+ <operation name="refreshPortletList" description="Refreshes the portlet list"/>
+
+ <metric property="portletNumber" displayName="Display the number of currently deployed portlets"/>
+
+ <!--<event name="portal-jopr-pluginDummyEvent"/>-->
+
+ <!--<resource-configuration>
+ --><!-- TODO supply your configuration parameters --><!--
+ </resource-configuration>-->
+
+
+ </server>
+
+
+</plugin>
\ No newline at end of file
Added: modules/jopr-plugin/trunk/pom.xml
===================================================================
--- modules/jopr-plugin/trunk/pom.xml (rev 0)
+++ modules/jopr-plugin/trunk/pom.xml 2009-04-23 16:49:20 UTC (rev 13266)
@@ -0,0 +1,37 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.jboss.portal.jopr</groupId>
+ <artifactId>module-aggregator</artifactId>
+ <packaging>pom</packaging>
+ <name>JBoss Portal JOPR Plugin Module (aggregator)</name>
+ <version>1.0.0-SNAPSHOT</version>
+ <url>http://www.jboss.org/jbossportal</url>
+
+ <dependencies/>
+
+ <!--Repository definition needed to deploy artifacts into JBoss maven repositories-->
+ <distributionManagement>
+ <repository>
+ <!--Copy the distribution jar file to a local checkout of the maven repository
+ - This variable can be set in $MAVEN_HOME/conf/settings.xml-->
+ <id>repository.jboss.org</id>
+ <url>file://${jboss.repository.root}</url>
+ </repository>
+ <snapshotRepository>
+ <id>snapshots.jboss.org</id>
+ <name>JBoss Snapshot Repository</name>
+ <url>dav:https://snapshots.jboss.org/maven2</url>
+ <uniqueVersion>true</uniqueVersion>
+ </snapshotRepository>
+ </distributionManagement>
+
+ <modules>
+ <module>build</module>
+ <module>portal-management</module>
+ <module>portal-management-service</module>
+ <module>plugin</module>
+ </modules>
+
+
+</project>
\ No newline at end of file
Added: modules/jopr-plugin/trunk/portal-management/pom.xml
===================================================================
--- modules/jopr-plugin/trunk/portal-management/pom.xml (rev 0)
+++ modules/jopr-plugin/trunk/portal-management/pom.xml 2009-04-23 16:49:20 UTC (rev 13266)
@@ -0,0 +1,71 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <groupId>org.jboss.portal.jopr</groupId>
+ <artifactId>module-parent</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ <relativePath>../build/pom.xml</relativePath>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>portal-management</artifactId>
+ <packaging>jar</packaging>
+ <name>JBoss Portal JOPR Plugin: Portal Management</name>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.portal.core</groupId>
+ <artifactId>core</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.portal.core</groupId>
+ <artifactId>jems</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.portal.core</groupId>
+ <artifactId>server</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.portal.portlet</groupId>
+ <artifactId>portlet-management</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.portal.portlet</groupId>
+ <artifactId>portlet-federation</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>jboss</groupId>
+ <artifactId>jboss-system</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>jboss</groupId>
+ <artifactId>jboss-common</artifactId>
+ </dependency>
+ </dependencies>
+
+
+ <build>
+ <plugins>
+ <!--<plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>1.5</source>
+ <target>1.5</target>
+ </configuration>
+ </plugin>-->
+
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>jboss-packaging-maven-plugin</artifactId>
+ <version>2.0-beta-1</version>
+
+ <!-- Enable packaging types and lifecycle bindings. -->
+ <extensions>true</extensions>
+ <configuration>
+ <excludeAll>true</excludeAll>
+ <primaryArtifact>false</primaryArtifact>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+</project>
\ No newline at end of file
Added: modules/jopr-plugin/trunk/portal-management/src/main/java/org/jboss/portal/management/Portal.java
===================================================================
--- modules/jopr-plugin/trunk/portal-management/src/main/java/org/jboss/portal/management/Portal.java (rev 0)
+++ modules/jopr-plugin/trunk/portal-management/src/main/java/org/jboss/portal/management/Portal.java 2009-04-23 16:49:20 UTC (rev 13266)
@@ -0,0 +1,38 @@
+/******************************************************************************
+ * JBoss, a division of Red Hat *
+ * Copyright 2006, Red Hat Middleware, LLC, and individual *
+ * contributors as indicated by the @authors tag. See the *
+ * copyright.txt in the distribution for a full listing of *
+ * individual contributors. *
+ * *
+ * This is free software; you can redistribute it and/or modify it *
+ * under the terms of the GNU Lesser General Public License as *
+ * published by the Free Software Foundation; either version 2.1 of *
+ * the License, or (at your option) any later version. *
+ * *
+ * This software is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
+ * Lesser General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Lesser General Public *
+ * License along with this software; if not, write to the Free *
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA *
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org. *
+ ******************************************************************************/
+package org.jboss.portal.management;
+
+import javax.management.ObjectName;
+import java.util.Map;
+
+/**
+ * @author <a href="mailto:theute@jboss.org">Thomas Heute</a>
+ * @version $Revision: 8784 $
+ */
+public interface Portal
+{
+
+ public int getNbInstances();
+
+ Map<String, ObjectName> getRegisteredPortletMappings();
+}
Added: modules/jopr-plugin/trunk/portal-management/src/main/java/org/jboss/portal/management/PortalImpl.java
===================================================================
--- modules/jopr-plugin/trunk/portal-management/src/main/java/org/jboss/portal/management/PortalImpl.java (rev 0)
+++ modules/jopr-plugin/trunk/portal-management/src/main/java/org/jboss/portal/management/PortalImpl.java 2009-04-23 16:49:20 UTC (rev 13266)
@@ -0,0 +1,77 @@
+/******************************************************************************
+ * JBoss, a division of Red Hat *
+ * Copyright 2006, Red Hat Middleware, LLC, and individual *
+ * contributors as indicated by the @authors tag. See the *
+ * copyright.txt in the distribution for a full listing of *
+ * individual contributors. *
+ * *
+ * This is free software; you can redistribute it and/or modify it *
+ * under the terms of the GNU Lesser General Public License as *
+ * published by the Free Software Foundation; either version 2.1 of *
+ * the License, or (at your option) any later version. *
+ * *
+ * This software is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
+ * Lesser General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Lesser General Public *
+ * License along with this software; if not, write to the Free *
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA *
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org. *
+ ******************************************************************************/
+package org.jboss.portal.management;
+
+import org.jboss.portal.core.impl.model.instance.InstanceContainerContext;
+import org.jboss.portal.jems.as.system.AbstractJBossService;
+
+import javax.management.ObjectName;
+import javax.naming.InitialContext;
+import javax.transaction.UserTransaction;
+import java.util.Map;
+
+/**
+ * @author <a href="mailto:theute@jboss.org">Thomas Heute</a>
+ * @version $Revision: 8805 $
+ */
+public class PortalImpl extends AbstractJBossService implements Portal
+{
+
+ private InstanceContainerContext containerContext;
+ private PortletDiscoveryService discoveryService;
+
+ public int getNbInstances()
+ {
+ int nbInstances = -1;
+ try
+ {
+ InitialContext ctx = new InitialContext();
+ UserTransaction tx;
+ tx = (UserTransaction)ctx.lookup("UserTransaction");
+ tx.begin();
+ nbInstances = containerContext.getInstanceDefinitions().size();
+ tx.commit();
+ }
+ catch (Exception e)
+ {
+ // FIXME
+ e.printStackTrace();
+ }
+ return nbInstances;
+ }
+
+ public Map<String, ObjectName> getRegisteredPortletMappings()
+ {
+ return discoveryService.getRegisteredPortlets();
+ }
+
+ public void setContainerContext(InstanceContainerContext containerContext)
+ {
+ this.containerContext = containerContext;
+ }
+
+ public void setDiscoveryService(PortletDiscoveryService discoveryService)
+ {
+ this.discoveryService = discoveryService;
+ }
+}
Added: modules/jopr-plugin/trunk/portal-management/src/main/java/org/jboss/portal/management/PortletDiscoveryService.java
===================================================================
--- modules/jopr-plugin/trunk/portal-management/src/main/java/org/jboss/portal/management/PortletDiscoveryService.java (rev 0)
+++ modules/jopr-plugin/trunk/portal-management/src/main/java/org/jboss/portal/management/PortletDiscoveryService.java 2009-04-23 16:49:20 UTC (rev 13266)
@@ -0,0 +1,148 @@
+package org.jboss.portal.management;
+
+import org.jboss.portal.portlet.Portlet;
+import org.jboss.portal.portlet.federation.FederatedPortletInvoker;
+import org.jboss.portal.portlet.federation.FederatingPortletInvoker;
+import org.jboss.portal.portlet.management.LocalPortletManagement;
+import org.jboss.portal.portlet.management.PortletContainerManagementInterceptor;
+import org.jboss.portal.portlet.management.PortletInfo;
+import org.jboss.system.ServiceMBeanSupport;
+
+import javax.management.ObjectName;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Map;
+import java.util.Collections;
+
+public class PortletDiscoveryService extends ServiceMBeanSupport
+{
+ public static final String WSRP_JMX_PREFIX = "portal.management:service=Management,type=WSRPPorlet,name=";
+ public static final String LOCAL_JMX_PREFIX = "portal.management:service=Management,type=LocalPortlet,name=";
+
+ private PortletContainerManagementInterceptor interceptor;
+
+ private FederatingPortletInvoker federatingPortletInvoker;
+
+ private Map<String, ObjectName> registeredPortlets = new HashMap<String, ObjectName>();
+
+ public void start()
+ {
+ try
+ {
+ processPortletDiscovery();
+ }
+ catch (Exception e)
+ {
+ e.printStackTrace();
+ }
+ }
+
+ public void stop()
+ {
+ for (ObjectName objectName : registeredPortlets.values())
+ {
+ try
+ {
+ getServer().unregisterMBean(objectName);
+ }
+ catch (Exception e)
+ {
+ e.printStackTrace();
+ }
+ }
+ if (registeredPortlets.size() != 0)
+ {
+ log.error("Unable to remove all the Portlet management MBeans");
+ }
+ }
+
+ public FederatingPortletInvoker getFederatingPortletInvoker()
+ {
+ return federatingPortletInvoker;
+ }
+
+ public void setFederatingPortletInvoker(FederatingPortletInvoker federatingPortletInvoker)
+ {
+ this.federatingPortletInvoker = federatingPortletInvoker;
+ }
+
+ public void setInterceptor(PortletContainerManagementInterceptor interceptor)
+ {
+ this.interceptor = interceptor;
+ }
+
+ public void processPortletDiscovery() throws Exception
+ {
+ Collection<FederatedPortletInvoker> federatedInvokers = federatingPortletInvoker.getFederatedInvokers();
+ for (FederatedPortletInvoker federatedPortletInvoker : federatedInvokers)
+ {
+ if (federatedPortletInvoker.getId().equals("local"))
+ {
+ registerPortlets(federatedPortletInvoker.getPortlets(), false);
+ }
+ else
+ {
+ registerPortlets(federatedPortletInvoker.getPortlets(), true);
+ }
+ }
+ }
+
+ public Map<String, ObjectName> getRegisteredPortlets()
+ {
+ return Collections.unmodifiableMap(registeredPortlets);
+ }
+
+ private void registerPortlets(Collection<Portlet> portlets, boolean wsrp)
+ {
+ for (Portlet portlet : portlets)
+ {
+ String portletId = portlet.getContext().getId();
+
+ boolean used = interceptor.getPortletInfo(portletId).isUsed();
+ if ((!registeredPortlets.containsKey(portletId)) && (used))
+ {
+ try
+ {
+ ObjectName objectName = createManagementMBean(portlet, wsrp);
+ registeredPortlets.put(portletId, objectName);
+ }
+ catch (Exception e)
+ {
+ e.printStackTrace();
+ }
+ }
+ }
+ }
+
+ private ObjectName createManagementMBean(Portlet portlet, boolean wsrp) throws Exception
+ {
+ Object management;
+ if (wsrp)
+ {
+ management = new WSRPPortletManagement(portlet, interceptor);
+ }
+ else
+ {
+ management = new LocalPortletManagement(portlet, interceptor);
+ }
+ String id = portlet.getContext().getId();
+ ObjectName objectName = new ObjectName(getMBeanName(id, wsrp));
+ getServer().registerMBean(management, objectName);
+ log.debug("Registered Management MBean for: " + id);
+ return objectName;
+ }
+
+ private String getMBeanName(String id, boolean wsrp)
+ {
+ if (wsrp)
+ {
+ return WSRP_JMX_PREFIX + id;
+ }
+ else
+ {
+ return LOCAL_JMX_PREFIX + id;
+ }
+ }
+
+}
Added: modules/jopr-plugin/trunk/portal-management/src/main/java/org/jboss/portal/management/WSRPPortletManagement.java
===================================================================
--- modules/jopr-plugin/trunk/portal-management/src/main/java/org/jboss/portal/management/WSRPPortletManagement.java (rev 0)
+++ modules/jopr-plugin/trunk/portal-management/src/main/java/org/jboss/portal/management/WSRPPortletManagement.java 2009-04-23 16:49:20 UTC (rev 13266)
@@ -0,0 +1,88 @@
+/******************************************************************************
+ * JBoss, a division of Red Hat *
+ * Copyright 2006, Red Hat Middleware, LLC, and individual *
+ * contributors as indicated by the @authors tag. See the *
+ * copyright.txt in the distribution for a full listing of *
+ * individual contributors. *
+ * *
+ * This is free software; you can redistribute it and/or modify it *
+ * under the terms of the GNU Lesser General Public License as *
+ * published by the Free Software Foundation; either version 2.1 of *
+ * the License, or (at your option) any later version. *
+ * *
+ * This software is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
+ * Lesser General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Lesser General Public *
+ * License along with this software; if not, write to the Free *
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA *
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org. *
+ ******************************************************************************/
+package org.jboss.portal.management;
+
+import org.jboss.portal.portlet.Portlet;
+import org.jboss.portal.portlet.management.PortletContainerManagementInterceptor;
+
+/**
+ * @author <a href="mailto:theute@jboss.org">Thomas Heute</a>
+ * @version $Revision: 8784 $
+ */
+public class WSRPPortletManagement implements org.jboss.portal.portlet.management.LocalPortletManagementMBean
+{
+ private Portlet portlet;
+
+ private PortletContainerManagementInterceptor interceptor;
+
+ public WSRPPortletManagement(Portlet portlet, PortletContainerManagementInterceptor interceptor)
+ {
+ this.portlet = portlet;
+ this.interceptor = interceptor;
+ }
+
+ public String getId()
+ {
+ return portlet.getContext().getId();
+ }
+
+ public float getAverageRenderTime()
+ {
+ return interceptor.getPortletInfo(getId()).getAverageRenderTime();
+ }
+
+ public float getAverageActionTime()
+ {
+ return interceptor.getPortletInfo(getId()).getAverageActionTime();
+ }
+
+ public long getMaxRenderTime()
+ {
+ return interceptor.getPortletInfo(getId()).getMaxRenderTime();
+ }
+
+ public long getMaxActionTime()
+ {
+ return interceptor.getPortletInfo(getId()).getMaxActionTime();
+ }
+
+ public long getRenderRequestCount()
+ {
+ return interceptor.getPortletInfo(getId()).getRenderRequestCount();
+ }
+
+ public long getActionRequestCount()
+ {
+ return interceptor.getPortletInfo(getId()).getActionRequestCount();
+ }
+
+ public long getActionErrorCount()
+ {
+ return interceptor.getPortletInfo(getId()).getActionErrorCount();
+ }
+
+ public long getRenderErrorCount()
+ {
+ return interceptor.getPortletInfo(getId()).getRenderErrorCount();
+ }
+}
Added: modules/jopr-plugin/trunk/portal-management-service/pom.xml
===================================================================
--- modules/jopr-plugin/trunk/portal-management-service/pom.xml (rev 0)
+++ modules/jopr-plugin/trunk/portal-management-service/pom.xml 2009-04-23 16:49:20 UTC (rev 13266)
@@ -0,0 +1,64 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <groupId>org.jboss.portal.jopr</groupId>
+ <artifactId>module-parent</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ <relativePath>../build/pom.xml</relativePath>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>portal-management-service</artifactId>
+ <packaging>jboss-sar</packaging>
+ <name>JBoss Portal JOPR Plugin: Portal Management Service</name>
+
+ <!--<dependencies>
+ <dependency>
+ <groupId>org.jboss.portal.jopr</groupId>
+ <artifactId>portal-management</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
+-->
+
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <version>2.0</version>
+ <executions>
+ <execution>
+ <id>copy-portal-jopr-plugin-jar</id>
+ <phase>process-resources</phase>
+ <goals>
+ <goal>copy</goal>
+ </goals>
+ <configuration>
+ <artifactItems>
+ <artifactItem>
+ <groupId>org.jboss.portal.jopr</groupId>
+ <artifactId>portal-management</artifactId>
+ <version>${project.version}</version>
+ </artifactItem>
+ </artifactItems>
+ <outputDirectory>${project.build.outputDirectory}/lib</outputDirectory>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>jboss-packaging-maven-plugin</artifactId>
+ <version>2.0-beta-1</version>
+
+ <!-- Enable packaging types and lifecycle bindings. -->
+ <extensions>true</extensions>
+ <configuration>
+ <excludeAll>true</excludeAll>
+ <primaryArtifact>false</primaryArtifact>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+</project>
\ No newline at end of file
Added: modules/jopr-plugin/trunk/portal-management-service/src/main/resources/META-INF/jboss-service.xml
===================================================================
--- modules/jopr-plugin/trunk/portal-management-service/src/main/resources/META-INF/jboss-service.xml (rev 0)
+++ modules/jopr-plugin/trunk/portal-management-service/src/main/resources/META-INF/jboss-service.xml 2009-04-23 16:49:20 UTC (rev 13266)
@@ -0,0 +1,89 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ ~ JBoss, a division of Red Hat ~
+ ~ Copyright 2006, Red Hat Middleware, LLC, and individual ~
+ ~ contributors as indicated by the @authors tag. See the ~
+ ~ copyright.txt in the distribution for a full listing of ~
+ ~ individual contributors. ~
+ ~ ~
+ ~ This is free software; you can redistribute it and/or modify it ~
+ ~ under the terms of the GNU Lesser General Public License as ~
+ ~ published by the Free Software Foundation; either version 2.1 of ~
+ ~ the License, or (at your option) any later version. ~
+ ~ ~
+ ~ This software is distributed in the hope that it will be useful, ~
+ ~ but WITHOUT ANY WARRANTY; without even the implied warranty of ~
+ ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ~
+ ~ Lesser General Public License for more details. ~
+ ~ ~
+ ~ You should have received a copy of the GNU Lesser General Public ~
+ ~ License along with this software; if not, write to the Free ~
+ ~ Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA ~
+ ~ 02110-1301 USA, or see the FSF site: http://www.fsf.org. ~
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~-->
+
+<server>
+
+ <!-- Portlet discovery executed every 30 seconds -->
+ <mbean
+ code="org.jboss.varia.scheduler.Scheduler"
+ name="portal:service=Management,type=Scheduler">
+ <attribute
+ name="SchedulableMBean">portal:service=Management,type=PortletDiscoveryManagement,name=Default</attribute>
+ <attribute name="SchedulableMBeanMethod">processPortletDiscovery()</attribute>
+ <attribute name="InitialStartDate">NOW</attribute>
+ <attribute name="SchedulePeriod">30000</attribute>
+ <attribute name="InitialRepetitions">-1</attribute>
+ <attribute name="StartAtStartup">true</attribute>
+ </mbean>
+
+ <mbean
+ code="org.jboss.portal.core.management.PortalImpl"
+ name="portal.management:service=Management,type=Portal,name=Default"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <depends optional-attribute-name="ContainerContext" proxy-type="attribute">portal:service=InstanceContainerContext</depends>
+ <depends optional-attribute-name="DiscoveryService" proxy-type="attribute">portal:service=Management,type=PortletDiscoveryManagement,name=Default</depends>
+ <xmbean/>
+ </mbean>
+
+ <mbean
+ code="org.jboss.portal.identity.management.Identity"
+ name="portal.management:service=Management,type=Identity,name=Default">
+ <depends>portal:service=Module,type=IdentityServiceController</depends>
+ <xmbean/>
+ </mbean>
+
+ <mbean
+ code="org.jboss.portal.core.management.PortletDiscoveryService"
+ name="portal:service=Management,type=PortletDiscoveryManagement,name=Default"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <depends
+ optional-attribute-name="FederatingPortletInvoker"
+ proxy-type="attribute">portal:service=PortletInvoker,type=Federating</depends>
+ <depends
+ optional-attribute-name="Interceptor"
+ proxy-type="attribute">portal:service=Interceptor,type=Portlet,name=PortletContainerManagement</depends>
+ <xmbean/>
+ </mbean>
+
+ <mbean
+ code="org.jboss.portal.portlet.management.PortletContainerManagementInterceptorImpl"
+ name="portal:service=Interceptor,type=Portlet,name=PortletContainerManagement"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.server.impl.invocation.JBossInterceptorRegistration"
+ name="portal:service=InterceptorRegistration,type=Portlet,name=PortletContainerManagement"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="StackFactory">portal:service=InterceptorStackFactory,type=Instance</depends>
+ <depends
+ optional-attribute-name="InterceptorName">portal:service=Interceptor,type=Portlet,name=PortletContainerManagement</depends>
+ </mbean>
+</server>
15 years
JBoss Portal SVN: r13265 - docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/html-single/Read_Me.
by portal-commits@lists.jboss.org
Author: prabhat.jha(a)jboss.com
Date: 2009-04-22 10:50:40 -0400 (Wed, 22 Apr 2009)
New Revision: 13265
Modified:
docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/html-single/Read_Me/index.html
Log:
updated release notes
Modified: docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/html-single/Read_Me/index.html
===================================================================
--- docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/html-single/Read_Me/index.html 2009-04-22 14:50:22 UTC (rev 13264)
+++ docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/html-single/Read_Me/index.html 2009-04-22 14:50:40 UTC (rev 13265)
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Release Notes GA</title><link rel="stylesheet" href="./Common_Content/css/default.css" type="text/css"/><meta name="generator" content="publican"/><meta name="package" content=""/><meta name="description" content="These release notes contain important information related to JBoss Enterprise Portal Platform 4.3 CP01 that may not be currently available in the Product Manuals. You should read these Release Notes in their entirety before installing JBoss Enterprise Portal Platform 4.3 CP01."/></head><body><div class="article" lang="en-US"><div class="titlepage"><div><div class="producttitle"><span class="productname">JBoss Enterprise Portal Platform</span> <span class="productnumber">4.3 CP01</span></div><div><h1 id="JBEAP-Release-Notes" class="title">Release Notes GA</h1></div><div><h2 class="subtitle">for Use with JBoss Enterprise Portal Platform 4.3</h2></div><div><h3 class="corpauthor">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Release Notes</title><link rel="stylesheet" href="./Common_Content/css/default.css" type="text/css"/><meta name="generator" content="publican"/><meta name="package" content=""/><meta name="description" content="These release notes contain important information related to JBoss Enterprise Portal Platform 4.3 CP01 that may not be currently available in the Product Manuals. You should read these Release Notes in their entirety before installing JBoss Enterprise Portal Platform 4.3 CP01."/></head><body><div class="article" lang="en-US"><div class="titlepage"><div><div class="producttitle"><span class="productname">JBoss Enterprise Portal Platform</span> <span class="productnumber">4.3 CP01</span></div><div><h1 id="JBEAP-Release-Notes" class="title">Release Notes</h1></div><div><h2 class="subtitle"/></div><div><h3 class="corpauthor">
<span class="inlinemediaobject"><object data="Common_Content/images/redhat-logo.svg" type="image/svg+xml"/></span>
</h3></div><div><div class="authorgroup"><h3 class="corpauthor">
Red Hat
- </h3></div></div><div><p class="copyright">Copyright © 2008 Red Hat, Inc</p></div><div><div id="d0e42" class="legalnotice"><h1 class="legalnotice">Legal Notice</h1><p>
+ </h3></div></div><div><p class="copyright">Copyright © 2008 Red Hat, Inc</p></div><div><div id="d0e41" class="legalnotice"><h1 class="legalnotice">Legal Notice</h1><p>
Copyright <span class="trademark"/>© 2008 Red Hat, Inc. This material may only be distributed subject to the terms and conditions set forth in the Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License (which is presently available at <a href="http://creativecommons.org/licenses/by-nc-sa/3.0/">http://creativecommons.org/licenses/by-nc-sa/3.0/</a>).
</p><p>
Red Hat and the Red Hat "Shadow Man" logo are registered trademarks of Red Hat, Inc. in the United States and other countries.
@@ -28,7 +28,7 @@
available in the Product Manuals. You should read these Release
Notes in their entirety before installing JBoss Enterprise Portal
Platform 4.3 CP01.</p></div></div></div><hr/></div><div class="toc"><dl><dt><span class="section"><a href="#Introduction">1. Introduction </a></span></dt><dd><dl><dt><span class="section"><a href="#Overview">1.1. Overview</a></span></dt></dl></dd><dt><span class="section"><a href="#New_Features">2. New Features in JBoss Enterprise Portal Platform 4.3</a></span></dt><dd><dl><dt><span class="section"><a href="#JSR-286">2.1. Portlet 2.0 -JSR 286</a></span></dt></dl></dd><dt><span class="section"><a href="#Component_Versions">3. Component Versions</a></span></dt><dt><span class="section"><a href="#Product-Support-and-License-Links">4. Product Support and License Website Links </a></span></dt><dt><span class="appendix"><a href="#appe-Publican-Revision_History">A. Revision History</a></span></dt></dl></div><div class="section" lang="en-US"><div class="titlepage"><div><div><h2 class="title" id="Introduction">1. Introduction </h2></div></div></div><p>
- These release notes contain important information related to JBoss Enterprise Portal Platform 4.3. New features, known problems, resources, and other current issues are addressed here.
+ These release notes contain important information related to JBoss Enterprise Portal Platform 4.3 CP01. New features, known problems, resources, and other current issues are addressed here.
</p><div class="section" lang="en-US"><div class="titlepage"><div><div><h3 class="title" id="Overview">1.1. Overview</h3></div></div></div><p>
JBoss Enterprise Portal Platform facilitates the delivery of web-based composite applications and high-performance web presences. Through its agile, reusable framework, customers can minimize the cost and complexity of their web infrastructures. Its use of open standards mitigates the risk of vendor lock-in, ensuring compatibility. As an integral component of JBoss Enterprise Middleware, the large and vibrant JBoss.org developer community fosters its continued innovation and enterprise quality. And it's deployed on JBoss Enterprise Application Platform—the industry’s #1 J2EE-certified application platform ensuring performance, scalability, and a reliable and straightforward path to implementation.
</p><p>
@@ -44,7 +44,7 @@
</p></div></div><div class="section" lang="en-US"><div class="titlepage"><div><div><h2 class="title" id="Component_Versions">3. Component Versions</h2></div></div></div><p>
This section details the versions of the components which create the Enterprise Portal Platform 4.3 that can be found in release on top of the components delivered by the Enterprise Application Platform 4.3.CP04.
</p><div class="itemizedlist"><ul><li><p>
- Identity Module 1.0.8
+ Identity Module 1.1.0
</p></li><li><p>
Common Module 1.2.4
</p></li><li><p>
@@ -57,19 +57,19 @@
JBoss Portlet Bridge 1.0.0.CR1
</p></li></ul></div><div class="note"><h2>Note</h2><p>
The Enterprise Portal Platform Server has been redefined for the enterprise market to a level where direct association to a community release can no longer be drawn.
- </p></div></div><div class="section" lang="en-US"><div class="titlepage"><div><div><h2 class="title" id="Product-Support-and-License-Links">4. Product Support and License Website Links </h2></div></div></div><h5 class="formalpara" id="d0e159">Support Processes</h5>
+ </p></div></div><div class="section" lang="en-US"><div class="titlepage"><div><div><h2 class="title" id="Product-Support-and-License-Links">4. Product Support and License Website Links </h2></div></div></div><h5 class="formalpara" id="d0e158">Support Processes</h5>
<a href="http://www.redhat.com/support/process/">http://www.redhat.com/support/process/</a>
- <h5 class="formalpara" id="d0e167"> Production Support Scope of Coverage </h5>
+ <h5 class="formalpara" id="d0e166"> Production Support Scope of Coverage </h5>
<a href="http://www.redhat.com/support/policy/soc/production">http://www.redhat.com/support/policy/soc/production</a>
- <h5 class="formalpara" id="d0e175"> Production Support Service Level Agreement </h5>
+ <h5 class="formalpara" id="d0e174"> Production Support Service Level Agreement </h5>
<a href="http://www.redhat.com/support/policy/sla/production/">http://www.redhat.com/support/policy/sla/production/</a>
- <h5 class="formalpara" id="d0e183"> Developer Support Scope of Coverage </h5>
+ <h5 class="formalpara" id="d0e182"> Developer Support Scope of Coverage </h5>
<a href="http://www.redhat.com/support/policy/soc/developer/">http://www.redhat.com/support/policy/soc/developer/</a>
- <h5 class="formalpara" id="d0e191"> Developer Support Service Level Agreement </h5>
+ <h5 class="formalpara" id="d0e190"> Developer Support Service Level Agreement </h5>
<a href="http://www.redhat.com/support/policy/sla/developer/">http://www.redhat.com/support/policy/sla/developer/</a>
- <h5 class="formalpara" id="d0e199"> Product Update and Support Policy by Product </h5>
+ <h5 class="formalpara" id="d0e198"> Product Update and Support Policy by Product </h5>
<a href="http://www.redhat.com/security/updates/jboss_notes/">http://www.redhat.com/security/updates/jboss_notes/</a>
- <h5 class="formalpara" id="d0e207"> JBoss End User License Agreement </h5>
+ <h5 class="formalpara" id="d0e206"> JBoss End User License Agreement </h5>
<a href="http://www.redhat.com/licenses/jboss_eula.html">http://www.redhat.com/licenses/jboss_eula.html</a>
</div><div class="appendix" lang="en-US"><h2 class="title" id="appe-Publican-Revision_History">A. Revision History</h2><p>
<div class="revhistory"><table border="0" width="100%" summary="Revision history"><tr><th align="left" valign="top" colspan="3"><b>Revision History</b></th></tr><tr><td align="left">Revision 1.0</td><td align="left"/><td align="left"><span class="author"><span class="firstname"/> <span class="surname"/></span></td></tr><tr><td align="left" colspan="3">
15 years
JBoss Portal SVN: r13264 - docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/html/Read_Me.
by portal-commits@lists.jboss.org
Author: prabhat.jha(a)jboss.com
Date: 2009-04-22 10:50:22 -0400 (Wed, 22 Apr 2009)
New Revision: 13264
Modified:
docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/html/Read_Me/Component_Versions.html
docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/html/Read_Me/New_Features.html
docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/html/Read_Me/Product-Support-and-License-Links.html
docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/html/Read_Me/appe-Publican-Revision_History.html
docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/html/Read_Me/index.html
Log:
updated release notes
Modified: docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/html/Read_Me/Component_Versions.html
===================================================================
--- docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/html/Read_Me/Component_Versions.html 2009-04-22 14:41:46 UTC (rev 13263)
+++ docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/html/Read_Me/Component_Versions.html 2009-04-22 14:50:22 UTC (rev 13264)
@@ -1,18 +1,20 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"><head><title>3. Component Versions</title><link rel="stylesheet" href="./Common_Content/css/default.css" type="text/css"/><meta name="generator" content="publican"/><meta name="package" content="JBoss_Enterprise_Portal_Platform-Release_Notes_GA-4.3-en-US-1.0-6"/><link rel="start" href="index.html" title="Release Notes GA"/><link rel="up" href="index.html" title="Release Notes GA"/><link rel="prev" href="New_Features.html" title="2. New Features in JBoss Enterprise Portal Platform 4.3"/><link rel="next" href="Product-Support-and-License-Links.html" title="4. Product Support and License Website Links"/></head><body><p id="title"><a href="http://www.redhat.com/docs"><strong>3. Component Versions</strong></a></p><ul class="docnav"><li class="previous"><a accesskey="p" href="New_Features.html"><strong>Prev</strong></a></li><li class="next"><a accesskey="n" href="Product-Support-and-License-Links.html"><strong>Next</strong></a></li>!
</ul><div class="section" lang="en-US"><div class="titlepage"><div><div><h2 class="title" id="Component_Versions">3. Component Versions</h2></div></div></div><p>
- This section details the versions of the components which create the Enterprise Portal Platform 4.3 that can be found in release on top of the components delivered by the Enterprise Application Platform 4.3.CP03.
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>3. Component Versions</title><link rel="stylesheet" href="./Common_Content/css/default.css" type="text/css"/><meta name="generator" content="publican"/><meta name="package" content="JBoss_Enterprise_Portal_Platform-Release_Notes-4.3-en-US-1.0-6"/><link rel="start" href="index.html" title="Release Notes"/><link rel="up" href="index.html" title="Release Notes"/><link rel="prev" href="New_Features.html" title="2. New Features in JBoss Enterprise Portal Platform 4.3"/><link rel="next" href="Product-Support-and-License-Links.html" title="4. Product Support and License Website Links"/></head><body><p id="title"><a href="http://www.redhat.com/docs"><strong>3. Component Versions</strong></a></p><ul class="docnav"><li class="previous"><a accesskey="p" href="New_Features.html"><strong>Prev</strong></a></li><li class="next"><a accesskey="n" href="Product-Support-and-License-Links.html"><strong>Next</strong></a></li></ul><div!
class="section" lang="en-US"><div class="titlepage"><div><div><h2 class="title" id="Component_Versions">3. Component Versions</h2></div></div></div><p>
+ This section details the versions of the components which create the Enterprise Portal Platform 4.3 that can be found in release on top of the components delivered by the Enterprise Application Platform 4.3.CP04.
</p><div class="itemizedlist"><ul><li><p>
- Identity Module 1.0.7
+ Identity Module 1.1.0
</p></li><li><p>
- Common Module 1.2.3
+ Common Module 1.2.4
</p></li><li><p>
- Portlet Module 2.0.5
+ Portlet Module 2.0.7
</p></li><li><p>
Web Module 1.2.3
</p></li><li><p>
- JBoss Portlet Bridge 1.0.B6
+ CMS Module 1.2.5
+ </p></li><li><p>
+ JBoss Portlet Bridge 1.0.0.CR1
</p></li></ul></div><div class="note"><h2>Note</h2><p>
The Enterprise Portal Platform Server has been redefined for the enterprise market to a level where direct association to a community release can no longer be drawn.
</p></div></div><ul class="docnav"><li class="previous"><a accesskey="p" href="New_Features.html"><strong>Prev</strong>2. New Features in JBoss Enterprise Portal Platfo...</a></li><li class="up"><a accesskey="u" href="#"><strong>Up</strong></a></li><li class="home"><a accesskey="h" href="index.html"><strong>Home</strong></a></li><li class="next"><a accesskey="n" href="Product-Support-and-License-Links.html"><strong>Next</strong>4. Product Support and License Website Links </a></li></ul></body></html>
\ No newline at end of file
Modified: docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/html/Read_Me/New_Features.html
===================================================================
--- docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/html/Read_Me/New_Features.html 2009-04-22 14:41:46 UTC (rev 13263)
+++ docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/html/Read_Me/New_Features.html 2009-04-22 14:50:22 UTC (rev 13264)
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"><head><title>2. New Features in JBoss Enterprise Portal Platform 4.3</title><link rel="stylesheet" href="./Common_Content/css/default.css" type="text/css"/><meta name="generator" content="publican"/><meta name="package" content="JBoss_Enterprise_Portal_Platform-Release_Notes_GA-4.3-en-US-1.0-6"/><link rel="start" href="index.html" title="Release Notes GA"/><link rel="up" href="index.html" title="Release Notes GA"/><link rel="prev" href="index.html" title="Release Notes GA"/><link rel="next" href="Component_Versions.html" title="3. Component Versions"/></head><body><p id="title"><a href="http://www.redhat.com/docs"><strong>2. New Features in JBoss Enterprise Portal Platform 4.3</strong></a></p><ul class="docnav"><li class="previous"><a accesskey="p" href="index.html"><strong>Prev</strong></a></li><li class="next"><a accesskey="n" href="Component_Versions.html"><strong>Next</strong></a></li></ul><div class="section" lang="en-US"><!
div class="titlepage"><div><div><h2 class="title" id="New_Features">2. New Features in JBoss Enterprise Portal Platform 4.3</h2></div></div></div><div class="section" lang="en-US"><div class="titlepage"><div><div><h3 class="title" id="JSR-286">2.1. Portlet 2.0 -JSR 286</h3></div></div></div><p>
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>2. New Features in JBoss Enterprise Portal Platform 4.3</title><link rel="stylesheet" href="./Common_Content/css/default.css" type="text/css"/><meta name="generator" content="publican"/><meta name="package" content="JBoss_Enterprise_Portal_Platform-Release_Notes-4.3-en-US-1.0-6"/><link rel="start" href="index.html" title="Release Notes"/><link rel="up" href="index.html" title="Release Notes"/><link rel="prev" href="index.html" title="Release Notes"/><link rel="next" href="Component_Versions.html" title="3. Component Versions"/></head><body><p id="title"><a href="http://www.redhat.com/docs"><strong>2. New Features in JBoss Enterprise Portal Platform 4.3</strong></a></p><ul class="docnav"><li class="previous"><a accesskey="p" href="index.html"><strong>Prev</strong></a></li><li class="next"><a accesskey="n" href="Component_Versions.html"><strong>Next</strong></a></li></ul><div class="section" lang="en-US"><div class="t!
itlepage"><div><div><h2 class="title" id="New_Features">2. New Features in JBoss Enterprise Portal Platform 4.3</h2></div></div></div><div class="section" lang="en-US"><div class="titlepage"><div><div><h3 class="title" id="JSR-286">2.1. Portlet 2.0 -JSR 286</h3></div></div></div><p>
The main improvement of the Enterprise Portal Platform is the support of Portlet 2.0 specification which enables Inter Portlet Communication by sharing parameters and event support.
- </p></div></div><ul class="docnav"><li class="previous"><a accesskey="p" href="index.html"><strong>Prev</strong>Release Notes GA</a></li><li class="up"><a accesskey="u" href="#"><strong>Up</strong></a></li><li class="home"><a accesskey="h" href="index.html"><strong>Home</strong></a></li><li class="next"><a accesskey="n" href="Component_Versions.html"><strong>Next</strong>3. Component Versions</a></li></ul></body></html>
\ No newline at end of file
+ </p></div></div><ul class="docnav"><li class="previous"><a accesskey="p" href="index.html"><strong>Prev</strong>Release Notes</a></li><li class="up"><a accesskey="u" href="#"><strong>Up</strong></a></li><li class="home"><a accesskey="h" href="index.html"><strong>Home</strong></a></li><li class="next"><a accesskey="n" href="Component_Versions.html"><strong>Next</strong>3. Component Versions</a></li></ul></body></html>
\ No newline at end of file
Modified: docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/html/Read_Me/Product-Support-and-License-Links.html
===================================================================
--- docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/html/Read_Me/Product-Support-and-License-Links.html 2009-04-22 14:41:46 UTC (rev 13263)
+++ docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/html/Read_Me/Product-Support-and-License-Links.html 2009-04-22 14:50:22 UTC (rev 13264)
@@ -1,18 +1,18 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"><head><title>4. Product Support and License Website Links</title><link rel="stylesheet" href="./Common_Content/css/default.css" type="text/css"/><meta name="generator" content="publican"/><meta name="package" content="JBoss_Enterprise_Portal_Platform-Release_Notes_GA-4.3-en-US-1.0-6"/><link rel="start" href="index.html" title="Release Notes GA"/><link rel="up" href="index.html" title="Release Notes GA"/><link rel="prev" href="Component_Versions.html" title="3. Component Versions"/><link rel="next" href="appe-Publican-Revision_History.html" title="A. Revision History"/></head><body><p id="title"><a href="http://www.redhat.com/docs"><strong>4. Product Support and License Website Links </strong></a></p><ul class="docnav"><li class="previous"><a accesskey="p" href="Component_Versions.html"><strong>Prev</strong></a></li><li class="next"><a accesskey="n" href="appe-Publican-Revision_History.html"><strong>Next</strong></a></li></ul>!
<div class="section" lang="en-US"><div class="titlepage"><div><div><h2 class="title" id="Product-Support-and-License-Links">4. Product Support and License Website Links </h2></div></div></div><h5 class="formalpara" id="d0e156">Support Processes</h5>
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>4. Product Support and License Website Links</title><link rel="stylesheet" href="./Common_Content/css/default.css" type="text/css"/><meta name="generator" content="publican"/><meta name="package" content="JBoss_Enterprise_Portal_Platform-Release_Notes-4.3-en-US-1.0-6"/><link rel="start" href="index.html" title="Release Notes"/><link rel="up" href="index.html" title="Release Notes"/><link rel="prev" href="Component_Versions.html" title="3. Component Versions"/><link rel="next" href="appe-Publican-Revision_History.html" title="A. Revision History"/></head><body><p id="title"><a href="http://www.redhat.com/docs"><strong>4. Product Support and License Website Links </strong></a></p><ul class="docnav"><li class="previous"><a accesskey="p" href="Component_Versions.html"><strong>Prev</strong></a></li><li class="next"><a accesskey="n" href="appe-Publican-Revision_History.html"><strong>Next</strong></a></li></ul><div clas!
s="section" lang="en-US"><div class="titlepage"><div><div><h2 class="title" id="Product-Support-and-License-Links">4. Product Support and License Website Links </h2></div></div></div><h5 class="formalpara" id="d0e158">Support Processes</h5>
<a href="http://www.redhat.com/support/process/">http://www.redhat.com/support/process/</a>
- <h5 class="formalpara" id="d0e164"> Production Support Scope of Coverage </h5>
+ <h5 class="formalpara" id="d0e166"> Production Support Scope of Coverage </h5>
<a href="http://www.redhat.com/support/policy/soc/production">http://www.redhat.com/support/policy/soc/production</a>
- <h5 class="formalpara" id="d0e172"> Production Support Service Level Agreement </h5>
+ <h5 class="formalpara" id="d0e174"> Production Support Service Level Agreement </h5>
<a href="http://www.redhat.com/support/policy/sla/production/">http://www.redhat.com/support/policy/sla/production/</a>
- <h5 class="formalpara" id="d0e180"> Developer Support Scope of Coverage </h5>
+ <h5 class="formalpara" id="d0e182"> Developer Support Scope of Coverage </h5>
<a href="http://www.redhat.com/support/policy/soc/developer/">http://www.redhat.com/support/policy/soc/developer/</a>
- <h5 class="formalpara" id="d0e188"> Developer Support Service Level Agreement </h5>
+ <h5 class="formalpara" id="d0e190"> Developer Support Service Level Agreement </h5>
<a href="http://www.redhat.com/support/policy/sla/developer/">http://www.redhat.com/support/policy/sla/developer/</a>
- <h5 class="formalpara" id="d0e196"> Product Update and Support Policy by Product </h5>
+ <h5 class="formalpara" id="d0e198"> Product Update and Support Policy by Product </h5>
<a href="http://www.redhat.com/security/updates/jboss_notes/">http://www.redhat.com/security/updates/jboss_notes/</a>
- <h5 class="formalpara" id="d0e204"> JBoss End User License Agreement </h5>
+ <h5 class="formalpara" id="d0e206"> JBoss End User License Agreement </h5>
<a href="http://www.redhat.com/licenses/jboss_eula.html">http://www.redhat.com/licenses/jboss_eula.html</a>
</div><ul class="docnav"><li class="previous"><a accesskey="p" href="Component_Versions.html"><strong>Prev</strong>3. Component Versions</a></li><li class="up"><a accesskey="u" href="#"><strong>Up</strong></a></li><li class="home"><a accesskey="h" href="index.html"><strong>Home</strong></a></li><li class="next"><a accesskey="n" href="appe-Publican-Revision_History.html"><strong>Next</strong>A. Revision History</a></li></ul></body></html>
\ No newline at end of file
Modified: docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/html/Read_Me/appe-Publican-Revision_History.html
===================================================================
--- docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/html/Read_Me/appe-Publican-Revision_History.html 2009-04-22 14:41:46 UTC (rev 13263)
+++ docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/html/Read_Me/appe-Publican-Revision_History.html 2009-04-22 14:50:22 UTC (rev 13264)
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"><head><title>A. Revision History</title><link rel="stylesheet" href="./Common_Content/css/default.css" type="text/css"/><meta name="generator" content="publican"/><meta name="package" content="JBoss_Enterprise_Portal_Platform-Release_Notes_GA-4.3-en-US-1.0-6"/><link rel="start" href="index.html" title="Release Notes GA"/><link rel="up" href="index.html" title="Release Notes GA"/><link rel="prev" href="Product-Support-and-License-Links.html" title="4. Product Support and License Website Links"/></head><body><p id="title"><a href="http://www.redhat.com/docs"><strong>A. Revision History</strong></a></p><ul class="docnav"><li class="previous"><a accesskey="p" href="Product-Support-and-License-Links.html"><strong>Prev</strong></a></li><li class="next"/></ul><div class="appendix" lang="en-US"><div class="titlepage"><div><div><h1 id="appe-Publican-Revision_History" class="title">Revision History</h1></div></div></div><p>
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>A. Revision History</title><link rel="stylesheet" href="./Common_Content/css/default.css" type="text/css"/><meta name="generator" content="publican"/><meta name="package" content="JBoss_Enterprise_Portal_Platform-Release_Notes-4.3-en-US-1.0-6"/><link rel="start" href="index.html" title="Release Notes"/><link rel="up" href="index.html" title="Release Notes"/><link rel="prev" href="Product-Support-and-License-Links.html" title="4. Product Support and License Website Links"/></head><body><p id="title"><a href="http://www.redhat.com/docs"><strong>A. Revision History</strong></a></p><ul class="docnav"><li class="previous"><a accesskey="p" href="Product-Support-and-License-Links.html"><strong>Prev</strong></a></li><li class="next"/></ul><div class="appendix" lang="en-US"><div class="titlepage"><div><div><h1 id="appe-Publican-Revision_History" class="title">Revision History</h1></div></div></div><p>
<div class="revhistory"><table border="0" width="100%" summary="Revision history"><tr><th align="left" valign="top" colspan="3"><b>Revision History</b></th></tr><tr><td align="left">Revision 1.0</td><td align="left"/><td align="left"><span class="author"><span class="firstname"/> <span class="surname"/></span></td></tr><tr><td align="left" colspan="3">
<table class="simplelist" border="0" summary="Simple list"><tr><td/></tr></table>
</td></tr></table></div>
Modified: docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/html/Read_Me/index.html
===================================================================
--- docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/html/Read_Me/index.html 2009-04-22 14:41:46 UTC (rev 13263)
+++ docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/html/Read_Me/index.html 2009-04-22 14:50:22 UTC (rev 13264)
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Release Notes GA</title><link rel="stylesheet" href="./Common_Content/css/default.css" type="text/css"/><meta name="generator" content="publican"/><meta name="package" content="JBoss_Enterprise_Portal_Platform-Release_Notes_GA-4.3-en-US-1.0-6"/><meta name="description" content="These release notes contain important information related to JBoss Enterprise Portal Platform 4.3 that may not be currently available in the Product Manuals. You should read these Release Notes in their entirety before installing JBoss Enterprise Portal Platform 4.3."/><link rel="start" href="index.html" title="Release Notes GA"/><link rel="next" href="New_Features.html" title="2. New Features in JBoss Enterprise Portal Platform 4.3"/></head><body><p id="title"><a href="http://www.redhat.com/docs"><strong>Release Notes GA</strong></a></p><ul class="docnav"><li class="previous"/><li class="next"><a accesskey="n" href="New_Features.html"><strong>!
Next</strong></a></li></ul><div class="article" lang="en-US"><div class="titlepage"><div><div class="producttitle"><span class="productname">JBoss Enterprise Portal Platform</span> <span class="productnumber">4.3</span></div><div><h1 id="JBEAP-Release-Notes" class="title">Release Notes GA</h1></div><div><h3 class="subtitle"><i>for Use with JBoss Enterprise Portal Platform 4.3</i></h3></div><div><h3 class="corpauthor">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Release Notes</title><link rel="stylesheet" href="./Common_Content/css/default.css" type="text/css"/><meta name="generator" content="publican"/><meta name="package" content="JBoss_Enterprise_Portal_Platform-Release_Notes-4.3-en-US-1.0-6"/><meta name="description" content="These release notes contain important information related to JBoss Enterprise Portal Platform 4.3 CP01 that may not be currently available in the Product Manuals. You should read these Release Notes in their entirety before installing JBoss Enterprise Portal Platform 4.3 CP01."/><link rel="start" href="index.html" title="Release Notes"/><link rel="next" href="New_Features.html" title="2. New Features in JBoss Enterprise Portal Platform 4.3"/></head><body><p id="title"><a href="http://www.redhat.com/docs"><strong>Release Notes</strong></a></p><ul class="docnav"><li class="previous"/><li class="next"><a accesskey="n" href="New_Features.html"><strong>Ne!
xt</strong></a></li></ul><div class="article" lang="en-US"><div class="titlepage"><div><div class="producttitle"><span class="productname">JBoss Enterprise Portal Platform</span> <span class="productnumber">4.3 CP01</span></div><div><h1 id="JBEAP-Release-Notes" class="title">Release Notes</h1></div><div><h3 class="subtitle"><i/></h3></div><div><h3 class="corpauthor">
<span class="inlinemediaobject"><object data="Common_Content/images/redhat-logo.svg" type="image/svg+xml"/></span>
</h3></div><div><div class="authorgroup"><h3 class="corpauthor">
Red Hat
- </h3></div></div><div><p class="copyright">Copyright © 2008 Red Hat, Inc</p></div><div><div id="d0e42" class="legalnotice"><h1 class="legalnotice">Legal Notice</h1><p>
+ </h3></div></div><div><p class="copyright">Copyright © 2008 Red Hat, Inc</p></div><div><div id="d0e41" class="legalnotice"><h1 class="legalnotice">Legal Notice</h1><p>
Copyright <span class="trademark"/>© 2008 Red Hat, Inc. This material may only be distributed subject to the terms and conditions set forth in the Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License (which is presently available at <a href="http://creativecommons.org/licenses/by-nc-sa/3.0/">http://creativecommons.org/licenses/by-nc-sa/3.0/</a>).
</p><p>
Red Hat and the Red Hat "Shadow Man" logo are registered trademarks of Red Hat, Inc. in the United States and other countries.
@@ -24,11 +24,11 @@
<span class="pob">PO Box 13588</span><span class="city">Research Triangle Park</span>, <span class="state">NC</span> <span class="postcode">27709</span><span class="country">USA</span><br/>
</p></div>
</p></div></div><div><div class="abstract"><h6>Abstract</h6><p>These release notes contain important information related to JBoss
-Enterprise Portal Platform 4.3 that may not be currently available
-in the Product Manuals. You should read these Release Notes in
-their entirety before installing JBoss Enterprise Portal Platform
-4.3.</p></div></div></div><hr/></div><div class="toc"><dl><dt><span class="section"><a href="index.html#Introduction">1. Introduction </a></span></dt><dd><dl><dt><span class="section"><a href="index.html#Overview">1.1. Overview</a></span></dt></dl></dd><dt><span class="section"><a href="New_Features.html">2. New Features in JBoss Enterprise Portal Platform 4.3</a></span></dt><dd><dl><dt><span class="section"><a href="New_Features.html#JSR-286">2.1. Portlet 2.0 -JSR 286</a></span></dt></dl></dd><dt><span class="section"><a href="Component_Versions.html">3. Component Versions</a></span></dt><dt><span class="section"><a href="Product-Support-and-License-Links.html">4. Product Support and License Website Links </a></span></dt><dt><span class="appendix"><a href="appe-Publican-Revision_History.html">A. Revision History</a></span></dt></dl></div><div class="section" lang="en-US"><div class="titlepage"><div><div><h2 class="title" id="Introduction">1. Introduction </h2></div></d!
iv></div><p>
- These release notes contain important information related to JBoss Enterprise Portal Platform 4.3. New features, known problems, resources, and other current issues are addressed here.
+Enterprise Portal Platform 4.3 CP01 that may not be currently
+available in the Product Manuals. You should read these Release
+Notes in their entirety before installing JBoss Enterprise Portal
+Platform 4.3 CP01.</p></div></div></div><hr/></div><div class="toc"><dl><dt><span class="section"><a href="index.html#Introduction">1. Introduction </a></span></dt><dd><dl><dt><span class="section"><a href="index.html#Overview">1.1. Overview</a></span></dt></dl></dd><dt><span class="section"><a href="New_Features.html">2. New Features in JBoss Enterprise Portal Platform 4.3</a></span></dt><dd><dl><dt><span class="section"><a href="New_Features.html#JSR-286">2.1. Portlet 2.0 -JSR 286</a></span></dt></dl></dd><dt><span class="section"><a href="Component_Versions.html">3. Component Versions</a></span></dt><dt><span class="section"><a href="Product-Support-and-License-Links.html">4. Product Support and License Website Links </a></span></dt><dt><span class="appendix"><a href="appe-Publican-Revision_History.html">A. Revision History</a></span></dt></dl></div><div class="section" lang="en-US"><div class="titlepage"><div><div><h2 class="title" id="Introduction">1. Introduction !
</h2></div></div></div><p>
+ These release notes contain important information related to JBoss Enterprise Portal Platform 4.3 CP01. New features, known problems, resources, and other current issues are addressed here.
</p><div class="section" lang="en-US"><div class="titlepage"><div><div><h3 class="title" id="Overview">1.1. Overview</h3></div></div></div><p>
JBoss Enterprise Portal Platform facilitates the delivery of web-based composite applications and high-performance web presences. Through its agile, reusable framework, customers can minimize the cost and complexity of their web infrastructures. Its use of open standards mitigates the risk of vendor lock-in, ensuring compatibility. As an integral component of JBoss Enterprise Middleware, the large and vibrant JBoss.org developer community fosters its continued innovation and enterprise quality. And it's deployed on JBoss Enterprise Application Platform—the industry’s #1 J2EE-certified application platform ensuring performance, scalability, and a reliable and straightforward path to implementation.
</p><p>
15 years
JBoss Portal SVN: r13263 - docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/pdf.
by portal-commits@lists.jboss.org
Author: prabhat.jha(a)jboss.com
Date: 2009-04-22 10:41:46 -0400 (Wed, 22 Apr 2009)
New Revision: 13263
Added:
docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/pdf/Release_Notes.pdf
Removed:
docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/pdf/Release_Notes_GA.pdf
Log:
some cleanup
Added: docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/pdf/Release_Notes.pdf
===================================================================
(Binary files differ)
Property changes on: docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/pdf/Release_Notes.pdf
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Deleted: docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/pdf/Release_Notes_GA.pdf
===================================================================
(Binary files differ)
15 years
JBoss Portal SVN: r13262 - docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/Read_Me/en-US.
by portal-commits@lists.jboss.org
Author: prabhat.jha(a)jboss.com
Date: 2009-04-22 10:40:33 -0400 (Wed, 22 Apr 2009)
New Revision: 13262
Removed:
docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/Read_Me/en-US/Release_Notes_GA.ent
docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/Read_Me/en-US/Release_Notes_GA.xml
Log:
some cleaning for cp01
Deleted: docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/Read_Me/en-US/Release_Notes_GA.ent
===================================================================
--- docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/Read_Me/en-US/Release_Notes_GA.ent 2009-04-22 14:37:09 UTC (rev 13261)
+++ docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/Read_Me/en-US/Release_Notes_GA.ent 2009-04-22 14:40:33 UTC (rev 13262)
@@ -1,3 +0,0 @@
-<!ENTITY HOLDER "Red Hat, Inc">
-<!ENTITY YEAR "2008">
-<!ENTITY VERSION "4.3">
Deleted: docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/Read_Me/en-US/Release_Notes_GA.xml
===================================================================
--- docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/Read_Me/en-US/Release_Notes_GA.xml 2009-04-22 14:37:09 UTC (rev 13261)
+++ docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/Read_Me/en-US/Release_Notes_GA.xml 2009-04-22 14:40:33 UTC (rev 13262)
@@ -1,873 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
-<!ENTITY % RH_ENTITIES SYSTEM "./Common_Config/rh-entities.ent">
-%RH_ENTITIES;
-]>
-<article id="JBEAP-Release-Notes">
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="Book_Info.xml"/>
- <section id="Introduction">
- <title>
- Introduction
- </title>
- <para>
- These release notes contain important information related to JBoss Enterprise Portal Platform &VERSION;. New features, known problems, resources, and other current issues are addressed here.
- </para>
- <section id="Overview">
- <title>Overview</title>
- <para>
- JBoss Enterprise Portal Platform facilitates the delivery of web-based composite applications and high-performance web presences. Through its agile, reusable framework, customers can minimize the cost and complexity of their web infrastructures. Its use of open standards mitigates the risk of vendor lock-in, ensuring compatibility. As an integral component of JBoss Enterprise Middleware, the large and vibrant JBoss.org developer community fosters its continued innovation and enterprise quality. And it's deployed on JBoss Enterprise Application Platform—the industry’s #1 J2EE-certified application platform ensuring performance, scalability, and a reliable and straightforward path to implementation.
- </para>
- <para>
-JBoss Enterprise Application Platform is the next evolutionary step in open source enterprise software. It is a powerful tool for developing rich, high performance, Web 2.0 applications on a pure Java Platform.
- </para>
- <para>
- JBoss Enterprise Application Platform provides complete compatibility with existing J2EE 1.4 enterprise Java applications. At the same time, almost all the key features and components defined in the Java EE 5.0 specification are supported. So your new enterprise Java applications can take immediate advantage of the Java EE 5.0's significantly simpler POJO-based programming model.
- </para>
- <para>
- Further, by integrating best-of-breed open source frameworks such as JBoss Seam, Hibernate, Tomcat, and JBoss Cache the Platform takes advantage of innovations in the open source community. As well, JBoss Enterprise Application Platform is fully tested and supported by Red Hat, and is certified to work on many leading enterprise hardware and software products.
- </para>
- <para>
- All of which means you can develop your new application taking advantage of Java EE 5.0 technologies immediately and with the confidence of knowing it will remain forward-compatible with future versions of the JBoss Platform.
- </para>
- </section>
- </section>
- <section id="New_Features">
- <title>New Features in JBoss Enterprise Portal Platform 4.3</title>
- <section id="JSR-286">
- <title>Portlet 2.0 -JSR 286</title>
- <para>
- The main improvement of the Enterprise Portal Platform is the support of Portlet 2.0 specification which enables Inter Portlet Communication by sharing parameters and event support.
- </para>
- </section>
- </section>
- <section id="Component_Versions">
- <title>Component Versions</title>
- <para>
- This section details the versions of the components which create the Enterprise Portal Platform 4.3 that can be found in release on top of the components delivered by the Enterprise Application Platform 4.3.CP04.
- </para>
- <itemizedlist>
- <listitem>
- <para>
- Identity Module 1.0.8
- </para>
- </listitem>
- <listitem>
- <para>
- Common Module 1.2.4
- </para>
- </listitem>
- <listitem>
- <para>
- Portlet Module 2.0.7
- </para>
- </listitem>
- <listitem>
- <para>
- Web Module 1.2.3
- </para>
- </listitem>
- <listitem>
- <para>
- CMS Module 1.2.5
- </para>
- </listitem>
-
- <listitem>
- <para>
- JBoss Portlet Bridge 1.0.0.CR1
- </para>
- </listitem>
- </itemizedlist>
- <note>
- <para>
- The Enterprise Portal Platform Server has been redefined for the enterprise market to a level where direct association to a community release can no longer be drawn.
- </para>
- </note>
- </section>
- <section id="Product-Support-and-License-Links">
- <title>
- Product Support and License Website Links
- </title>
- <formalpara>
- <title>Support Processes</title>
- <para>
- <ulink url="http://www.redhat.com/support/process/">http://www.redhat.com/support/process/</ulink>
- </para>
- </formalpara>
-
- <formalpara>
- <title>
- Production Support Scope of Coverage
- </title>
- <para>
- <ulink url="http://www.redhat.com/support/policy/soc/production">http://www.redhat.com/support/policy/soc/production</ulink>
- </para>
- </formalpara>
-
-
- <formalpara>
- <title>
- Production Support Service Level Agreement
- </title>
-
- <para>
- <ulink url="http://www.redhat.com/support/policy/sla/production/">http://www.redhat.com/support/policy/sla/production/</ulink>
- </para>
- </formalpara>
-
- <formalpara>
- <title>
- Developer Support Scope of Coverage
- </title>
-
- <para>
- <ulink url="http://www.redhat.com/support/policy/soc/developer/">http://www.redhat.com/support/policy/soc/developer/</ulink>
- </para>
- </formalpara>
-
- <formalpara>
- <title>
- Developer Support Service Level Agreement
- </title>
-
- <para>
- <ulink url="http://www.redhat.com/support/policy/sla/developer/">http://www.redhat.com/support/policy/sla/developer/</ulink>
- </para>
- </formalpara>
-
- <formalpara>
- <title>
- Product Update and Support Policy by Product
- </title>
-
- <para>
- <ulink url="http://www.redhat.com/security/updates/jboss_notes/">http://www.redhat.com/security/updates/jboss_notes/</ulink>
- </para>
- </formalpara>
-
- <formalpara>
- <title>
- JBoss End User License Agreement
- </title>
-
- <para>
- <ulink url="http://www.redhat.com/licenses/jboss_eula.html">http://www.redhat.com/licenses/jboss_eula.html</ulink>
- </para>
- </formalpara>
- </section>
-<!--
- <section id="Issues-fixed-in-this-release">
- <title>
- Issues fixed in this release
- </title>
-
- <para>
- Following is a list of issues fixed in this release:
- </para>
- <formalpara>
- <title>JBoss Messaging</title>
- <para>
- <itemizedlist>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1615">JBPAPP-1615</ulink>: The JBoss Messaging component of the EAP has been upgraded to version 1.4.0.SP3-CP05. A list of the included fixes is as follows:
- </para>
- <itemizedlist>
- <listitem>
- <para>
- The <literal>default</literal> profile for JBoss without any reconfiguration uses the <classname>ClusteredConnectionFactory</classname> with a non-clustered post-office, however warnings would be loged about this behavior when the log messages should be reduced from a <varname>WARN</varname> level to an <varname>INFO</varname> level. The upgrade to this version of JBoss Messaging sees this implemented within the log.
- </para>
- </listitem>
- <listitem>
- <para>
- <classname>ClusterViewUpdateTest</classname> was broken and did not work correctly in previous releases with the cause being that the expected time until failure detection for some clustering tests was too long. In order to correct this the values for <varname>validatorPingPeriod</varname> and <varname>validatorPingTimeout</varname> have been changed to be 2 seconds each, combining to 4 seconds as the total time until expected failure detection.
- </para>
- </listitem>
- <listitem>
- <para>
- Client connection parameters were not passed to the JBoss Remoting layer, forcing Remoting to use default values instead of user configured values. In order to use the correct values, <filename>JMSRemotingConnection.java</filename> has been updated so that the <methodname>Client.addConnectionListener</methodname> method is used with <varname>listener</varname> and <varname>serverLocator.gerParameters()</varname> as parameters.
- </para>
- </listitem>
- <listitem>
- <para>
- Messages which are sheduled for delivery in the future were not being removed correctly when the <methodname>removeAllMessages()</methodname> method was being called, causing the messages to bre requeued as soon as the application server or queue is restarted. <filename>ChannelSupport.java</filename> has been updated to import the <filename>TimeoutExt</filename> library in order to cast the timeout value to <filename>TimeoutExt</filename> in order to obtain the reference value via the <methodname>getTimeoutTarget()</methodname> method. With this new reference value information, the sheduled messages can be correctly removed from the queue.
- </para>
- </listitem>
- <listitem>
- <para>
- There was an occurance where a user may deploy a clustered queue in a single node instead of in all the nodes and the failover process would not work because of this. When this occurred an <exceptionname>IllegalStateException</exceptionname> would be generated, however this was not considered enough of a prominent warning about not deploying clustered queues correctly. <filename>MessagingPostOffice.java</filename> has now been updated to log a warning which outlies that clustered destinations must be deployed on all nodes of a cluster, instead of generating an <exceptionname>IllegalStateException</exceptionname>.
- </para>
- </listitem>
- <listitem>
- <para>
- The <classname>ClientAOPStackLoader</classname>, <classname>SecurityAspect.check()</classname> and <classname>ServerConnectionFactoryEndpoint</classname> needed to be able to optain TCL within a privileged block, otherwise an <exceptionname>AccessControlException</exceptionname> is produced. To fix this bug, the <methodname>setTCL</methodname>, <methodname>getTCL</methodname> and other TCL methods have been set within security blocks; this prevents access denied exceptions from <classname>ClientAOPStackLoader</classname>, <classname>SecurityAspect.check()</classname> and <classname>ServerConnectionFactoryEndpoint</classname>.
- </para>
- </listitem>
- <listitem>
- <para>
- The logging of actions within JBoss Messaging did not include the logging of messages when they are moved to the expiry or dead letter queues as this was only logged at trace level. In order to add this enhanced level of logging, the <filename>ClientConsumer.java</filename> file has been updated to log warning messages and debug information pertaining to the move of messages to the expiry or dead letter queues; <filename>ServerSessionEndpoint.java</filename> has also been updated in the same mannor.
- </para>
- </listitem>
- <listitem>
- <para>
- There was an error when a message was received under a XA tx and the JBoss Messaging XAResource is prepared but not committed, a message could be received by another consumer in another transaction while the first is still in progress. The correct behaviour is for JBoss Messaging to hold the message until the associated transaction is committed or rolled back, enabling duplication of message deliveries to be avoided. In the <filename>Delivery.java</filename> file, messages are now marked with a boolean value detailing if they are for delivery with a XA transaction and if this transaction is prepared and <filename>SimpleDelivery.java</filename> now implements this new information.
- </para>
- </listitem>
- <listitem>
- <para>
- The <methodname>shutdownNow()</methodname> method was not synchronized and may cause a <exceptionname>NoSuchElementException</exceptionname> during runtime as a result. A synchronization block has been placed around the <methodname>shutdownNow()</methodname> code within <filename>OrderedExecutorFactory.java</filename>.
- </para>
- </listitem>
- <listitem>
- <para>
- There was an issue with the <classname>org.jboss.jms.server.messagecounter.MessageCounter</classname> class not being serializable as it caused an <exceptionname>UndeclaredThrowableException</exceptionname>. <filename>MessageCounter.java</filename> has been updated to now import and implement the <literal>Serializable</literal> library and be given a <varname>serialVersionUID</varname>, allowing the <classname>org.jboss.jms.server.messagecounter.MessageCounter</classname> class to be serializable.
- </para>
- </listitem>
- <listitem>
- <para>
- When the methods <methodname>unregisterSucker()</methodname> or <methodname>registerSucker()</methodname> was called a <exceptionname>ConcurrentModificationException</exceptionname> would be generated by the time the <literal>HashSet</literal> containing the <literal>suckers</literal> was iterated. The issue would present itself on clusters with a magnitude of nodes (for instance it appeared on a 8 node cluster but not a 4 node cluster). This bug was corrected by creating an iterator that used a private set of <literal>suckers</literal> for iteration through the <literal>HashSet</literal> of <literal>suckers</literal> in order to avoid the exception.
- </para>
- </listitem>
- <listitem>
- <para>
- The bridge within JBoss Messaging would only retry connection creation to a remote destination after startup and if the remote provider was not available at startup, the bridge would fail to start. The <filename>Bridge.java</filename> and <filename>BridgeService.java</filename> files have undergone extensive modification and now the <literal>factory</literal> is set to the <literal>bridge</literal> which undertakes the lookup itself instead of looking up the destinations.
- </para>
- </listitem>
- </itemizedlist>
- </listitem>
- </itemizedlist>
- </para>
- </formalpara>
- <formalpara>
- <title>JBoss Cache</title>
- <para>
- <itemizedlist>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1533">JBPAPP-1533</ulink>: The JBoss Cache component of the EAP has been upgraded to version 1.4.1.SP11. A list of the included fixes is as follows:
- </para>
- <itemizedlist>
- <listitem>
- <para>
- The <classname>JDBCCacheLoader</classname> implementation did not work with Sybase as it would try to set a null <varname>BLOB</varname> column which is unsupported within Sybase. To correct this the <filename>JDBCCacheLoader.java</filename> file has been updated so that the Sybase Driver sets a null <varname>LONGVARBINARY</varname> value, allowing the <classname>JDBCCacheLoader</classname> implementation to work correctly.
- </para>
- </listitem>
- <listitem>
- <para>
- The <classname>JDBCExtCacheLoader</classname> did not handle persistent state transfer correctly since the <methodname>JDBCExtCacheLoader.storeState()</methodname> method would use avaliable bytes on the <classname>MarshalledValueInputStream</classname> rather than on the <classname>ByteArrayInputStream</classname> when storing the persistent state. This was an issue because the <classname>MarshalledValueInputStream</classname> always returns a null value, meaning the persistent state was never written. In fixing this issue the <filename>JDBCExtendedCacheLoader.java</filename> file has been modified so that it specifies to check for avaliable space on the <classname>ByteArrayInputStream</classname>.
- </para>
- </listitem>
- </itemizedlist>
- </listitem>
- </itemizedlist>
- </para>
- </formalpara>
- <formalpara>
- <title>JBoss Remoting</title>
- <para>
- <itemizedlist>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1531">JBPAPP-1531</ulink>: The JBoss Remoting component of the EAP has been upgraded to version 2.2.2.SP11. A list of the included fixes is as follows:
- </para>
- <itemizedlist>
- <listitem>
- <para>
- The <methodname>ConnectionValidator.run()</methodname> method had the ability to be called by a user before the private method <methodname>ConnectionValidator.start()</methodname> was called, resulting in the <varname>clientInvoker</varname> and <varname>timer</varname> fields being set to null and generating a <exceptionname>NullPointerException</exceptionname>. Within the <filename>ConnectionValidator.java</filename> file the fields are now checked to see if they are null upon execution of the <methodname>ConnectionValidator.run()</methodname> method, one or both are then an <exceptionname>IllegalStateException</exceptionname> is displayed to the user outlining that <methodname>ConnectionValidator.run()</methodname> should not be called directly but <methodname>addConnectionListener()</methodname> should be used instead.
- </para>
- </listitem>
- <listitem>
- <para>
- Two bugs existed within the <methodname>org.jboss.remoting.marshal.MarshallerLoaderHandler.loadClassBytes()</methodname> method that prohibited remote classloading to work correctly with isolated EARs. The first was that a while loop in the code needed a break and the second was that the call to the <methodname>org.jboss.mx.loading.LoaderRepository.getCachedClass()</methodname> method should have been a general call to <methodname>LoaderRepository.loadClass()</methodname>. These two issues have been rectified with this Remoting update, allowing remote classloading to function correctly.
- </para>
- </listitem>
- <listitem>
- <para>
- A bug existed within the Remoting component by which the RemotingClassLoader would always attempt to load a class over the network first if remote classloading was enabled, leading to conflicts if the class was avaliable locally before. The code has been corrected to check locally first before looking remotely.
- </para>
- </listitem>
- <listitem>
- <para>
- The <classname>ServerInvokerCallbackHandler</classname> class would become unresponsive when calling the <methodname>BlockingCallbackStore.add()</methodname> method after locking the callback field with a true responce from the <methodname>persistCallback()</methodname> method. This would occur because the <methodname>BlockingCallbackStore.getNext()</methodname> needed to control the lock on the callback field to break the waiting period, however this could not be achieved because of the wait period. To fix this issue the call to the <methodname>BlockingCallbackStore.add()</methodname> method has been removed as it was an unnecessary step.
- </para>
- </listitem>
- <listitem>
- <para>
- The <classname>HTTPClientInvoker</classname> did not support Beginner's All-purpose Symbolic Instruction Code (BASIC) authentication for proxies when the proxy was configured through system property options of <methodname>http.proxyHost</methodname> and <methodname>http.proxyPort</methodname>. The issue appears because the <classname>HTTPClientInvoker</classname> would not check for the existence of these options and in tern it would never create a <methodname>Proxy-Authorization</methodname> request header, which is necessary for normal opperation. To fix this the <classname>HTTPClientInvoker</classname> has been modified to check for the existence of the <methodname>http.proxyHost</methodname> option and if it detects its use, creates a <methodname>Proxy-Authorization</methodname> request header.
- </para>
- </listitem>
- <listitem>
- <para>
- <classname>HTTPClientInvoker</classname> would generate a <exceptionname>NullPointerException</exceptionname> when the HTTP server returned an error code without any content and then the <methodname>java.net.HttpUrlConnection.getInputStream()</methodname> method returned a null value. In order to improve control over this behavior, the new variable <varname>UNMARSHAL_NULL_STREAM</varname> has been added to the <classname>HTTPClientInvoker</classname>. If this variable is set to true (the default value) the default behavior is executed, however if it is set to false the call to the <methodname>UnMarshaller.read()</methodname> is skipped.
- </para>
- </listitem>
- <listitem>
- <para>
- Within the <classname>InvokerRegistry</classname> an error existed associated with the sequencing of events and <classname>serverLocators</classname> would return a null on occasion. To correct this race condition, the sequencing of events within the <classname>InvokerRegistry</classname> has been rearragned so that references to <classname>transportClientFactoryClasses</classname> and <classname>clientLocators</classname> are governed by <classname>clientLock</classname> and references to <classname>transportServerFactoryClasses</classname>, <classname>serverLocators</classname>, and <classname>registeredLocators</classname> are governed by <classname>serverLock</classname>.
- </para>
- </listitem>
- <listitem>
- <para>
- A bug existed where the value in the client configuration map of the <classname>ConnectionValidator</classname> would be ignored when the overloaded <methodname>org.jboss.remoting.Client</methodname> method was called and the <varname>DEFAULT_PING_PERIOD</varname> variable value was placed into the metadata map passed to the <classname>ConnectionValidator</classname>. This has been corrected by updating <classname>org.jboss.remoting.Client.addConnectionListener</classname> so that <varname>DEFAULT_PING_PERIOD</varname> is only passed if the value of <varname>VALIDATOR_PING_PERIOD</varname> within the client's configuration map has not been set.
- </para>
- </listitem>
- <listitem>
- <para>
- <classname>ConnectionValidator</classname> may become unresponsive then the <methodname>run()</methodname> method is executed and utilizes the <varname>lock</varname> variable. The methods within the <methodname>run()</methodname> method are meant to time out so that the <varname>lock</varname> variable can become avaliable to the <methodname>notifyListeners()</methodname> in the event of a network failure; however <methodname>run()</methodname> may execute again before <methodname>notifyListeners()</methodname> can. The synchronization on the <varname>lock</varname> variable has been modified to avoid this issue to enable correct operation.
- </para>
- </listitem>
- <listitem>
- <para>
- During occurances of the server being under heavy load, an <exceptionname>IllegalStateException</exceptionname> would occur within the <methodname>ConnectorValidator.run()</methodname> method because further synchronization on the <varname>lock</varname> variable was necessary. This issue was fixed during the rectification of the above problem.
- </para>
- </listitem>
- <listitem>
- <para>
- A synchronization error within the <classname>MarshalFactory</classname> was allowing a subsystem to add a marshaller at the same time as EJB3 was trying to extract one causing users to receive an <exceptionname>InvalidMarshallingResource</exceptionname> exception; this also applied to unmarshallers. The error has been fixed by updating the <filename>jboss-remoting.jar</filename> file to include synchronized static Maps within the <classname>MarshalFactory</classname>.
- </para>
- </listitem>
- <listitem>
- <para>
- The <classname>SocketServerInvoker</classname> had an issue when shutting down <varname>ServerThreads</varname> causing a user to possibly receive an invocation to a closed <classname>SocketServerInvoker</classname> on the client side, causing an <exceptionname>InvalidStateException</exceptionname>. Allowing this exception would cause a clustered EJB3 system to generate a <exceptionname>UndeclaredThrowableException</exceptionname> instead of trying alternative servers. To allow for alternatives to be attempted, an optional behavior of allowing the <classname>MicroRemoteClientInvoker</classname> to interpret an <exceptionname>InvalidStateException</exceptionname> as a <exceptionname>CannotConnectException</exceptionname>, allowing for other servers to be attempted.
- </para>
- </listitem>
- </itemizedlist>
- </listitem>
- </itemizedlist>
- </para>
- </formalpara>
- <formalpara>
- <title>JBoss Web</title>
- <para>
- <itemizedlist>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1493">JBPAPP-1493</ulink>: An error would be shown on occassion by <emphasis>Internet Explorer</emphasis> because xml content would not be sent when <emphasis>PROPFIND</emphasis> requests were being used. This has been fixed by creating a new method within <filename>WebdavServlet.java</filename> that overrides the <methodname>DefaultServlet</methodname> implementation for servlet request processing and testing for input before launching the <methodname>DocumentBuilder</methodname>.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1470">JBPAPP-1470</ulink>: When using APR (Apache Portable Runtime) on any operating system other than those which use the Linux Kernal 2.4 or newer, the <parameter>deferAccept</parameter> option would be set to false in the <methodname>AprEndpoint</methodname>. This may lead to a <exceptionname>NullPointerException</exceptionname> as the <methodname>accepter</methodname> thread starts to process a request while also calling for a <methodname>poller</methodname> before initialization. The issue has been resolved by moving the <methodname>acceptor</methodname> threads to being executed last when starting the <methodname>AprEndpoint</methodname>.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1334">JBPAPP-1334</ulink>: The JBoss Web component of the EAP has been upgraded to version 2.0.0-6.CP09. A list of the included fixes is as follows:
- </para>
- <itemizedlist>
- <listitem>
- <para>
- If a war deployment included its own version of <filename>xalan.jar</filename> and <filename>xercesImpl.jar</filename> in <filename>WEB-INF/lib</filename>, the JBossWeb servlet container classloader returns JBoss provided version of the <literal>SAXParser</literal> from <methodname>SAXParserFactory.newInstance().newSAXParser()</methodname> rather than the version provided in the war deployment. To fix this bug the <filename>WebAppClassLoader.java</filename> has been updated to ensure the correct parser is used.
- </para>
- </listitem>
- </itemizedlist>
- </listitem>
- </itemizedlist>
- </para>
- </formalpara>
- <formalpara>
- <title>JBoss Web Services</title>
- <para>
- <itemizedlist>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1552">JBPAPP-1552</ulink>: When deploying JBoss Web Services within EAP without internet access, <classname>JBossWSEntityResolver</classname> would not resolve any schemas causing Web Services for Remote Portlets (WSRP) to produce an error. This issue has been fixed by modifying <classname>JBossWSEntityResolver</classname> within <filename>WSDL11Reader.java</filename> to resolve schemas locally when an internet connection is unavaliable.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1449">JBPAPP-1449</ulink>: WSProvide would ignore a <literal>SOAPBinding</literal> declaration specified in the EJB3 stateless session bean. To correct this and allow <literal>SOAPBinding</literal> to work as expected the following files have been modified: <filename>WSDLGenerator.java</filename>, <filename>SOAPEndpoint.java</filename>, <filename>Constants.java</filename>, <filename>WSDLWriter.java</filename>, <filename>SOAPBindingTestCase.java</filename> and <filename>WSDL11Writer.java</filename>.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1439">JBPAPP-1439</ulink>: The component <emphasis>Xerces</emphasis> of JBoss Web Services has a feature that optimises the parsing of messages called <methodname>Deffered Node Expansion</methodname>.This defers node expansion until the nodes are accessed, improving performance where not all nodes need to be visited. However memory overheads are increased, which can be considerable for large messages.
- </para>
- <para>
- This release grants the user an option to disable the <methodname>Deffered Node Expansion</methodname> feature and have all nodes expand. To achieve this the following system property needs to be set:
- </para>
-<programlisting>
--Dorg.jboss.ws.disable_deferred_node_expansion=true
-</programlisting>
- </listitem>
- </itemizedlist>
- </para>
- </formalpara>
- <formalpara>
- <title>JBoss Seam</title>
- <para>
- <itemizedlist>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1553">JBPAPP-1553</ulink>: When the <methodname>parseRequest()</methodname> method of the <classname>org.jboss.seam.web.MultipartRequest</classname> class uploaded a large file, there were occurances when this would cause an endless loop and use 100% of the computers CPU. In order to break out of the loop, a <varname>loopCounter</varname> has been implemented within the <filename>MultipartRequest.java</filename> file.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1494">JBPAPP-1494</ulink>: The portal example that was previously included with the Seam EAP distribution has been removed in order to avoid confusion that Seam 1.2.1 included with the EAP supports portal.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1044">JBPAPP-1044</ulink>: After basic interaction with the Seam examples <filename>chatroom</filename>, <filename>mail</filename>, <filename>registration</filename>, <filename>booking</filename> and <filename>dvdstore</filename> would generate a <exceptionname>NullPointerException</exceptionname> during undeployment. In correcting this issue, the <filename>RootInterceptor.java</filename> file was updated to check if an applications context still active upon undeployment and deal with this appropriately.
- </para>
- </listitem>
- </itemizedlist>
- </para>
- </formalpara>
- <formalpara>
- <title>JBoss Hibernate</title>
- <para>
- <itemizedlist>
- <important>
- <para>
- Hibernate Core has been updated to an enhanced 3.2.4.sp1.cp07 version. The following issues represent the changes for this version.
- </para>
- </important>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1628">JBPAPP-1628</ulink>: In an earlier fix to Hibernate the <methodname>org.hibernate.jdbc.AbstractBatcher#closeQueryStatement()</methodname> method was changed to check for the existance of the prepared statement in the <classname>statementsToClose</classname> collection instead of closing it unconditionally. This has now caused a properties leak as the <methodname>org.hibernate.persister.entity.AbstractEntityPersister#processGeneratedProperties()</methodname> used <methodname>org.hibernate.jdbc.AbstractBatcher#closeQueryStatement()</methodname> and the statement within <methodname>org.hibernate.persister.entity.AbstractEntityPersister#processGeneratedProperties()</methodname> is not added to the <classname>statementsToClose</classname> collection.
- </para>
- <para>
- <filename>AbstractEntityPersister.java</filename> has been updated to execute a prepared statement on the result set and after calculating the <varname>propValue</varname> the result set is closed if it is not null; ensuring that no leak can occur.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1582">JBPAPP-1582</ulink>:
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1524">JBPAPP-1524</ulink>: The Sybase functions <methodname>second()</methodname>, <methodname>minute()</methodname>, <methodname>hour()</methodname> and <methodname>extract()</methodname> caused a <exceptionname>GenericJDBCException</exceptionname> when used. Moving these functions from the <filename>SQLServerDialect.java</filename> file to the <filename>SybaseDialect.java</filename> file allows for these functions to work correctly.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1519">JBPAPP-1519</ulink>: Sybase does not support the opperation <emphasis>on cascade delete</emphasis> while SQL Server does. To make sure that both opperate correctly the <filename>SQLServerDialect.java</filename> file has been updated to include a new <methodname>supportsCascadeDelete()</methodname> method which returns true and <filename>SybaseDialect.java</filename> has been updated to include a new <methodname>supportsCascadeDelete()</methodname> method which returns false.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1496">JBPAPP-1496</ulink>: A memory leak existed because of an unclosed <emphasis>ResultSet</emphasis> when using the <emphasis>Identity</emphasis> generator option. To close the memory leak, the <emphasis>ResultSet</emphasis> is checked to make sure it is closed before returning the generated itentity value.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1480">JBPAPP-1480</ulink>: Hibernate would attempt to read from an invalid column in the collection result set when the following conditions were present:
- </para>
- <itemizedlist>
- <listitem>
- <para>
- Instances of a subclass were contained in a collection.
- </para>
- </listitem>
- <listitem>
- <para>
- The subclasses were single-table and used a <join> (table-per-subclass with discriminator).
- </para>
- </listitem>
- <listitem>
- <para>
- The <join> portion of the subclass contained at least 3 of its own columns.
- </para>
- </listitem>
- <listitem>
- <para>
- The <join> tables were fetched by select and not the default method for this task.
- </para>
- </listitem>
- </itemizedlist>
- <para>
- To fix this isue the <filename>AbstractEntityPersister.java</filename> file was updated so that the <varname>columnNumber</varname> variable is passed to the <methodname>subclassColumnSelectableClosure</methodname> method instead of an increment of the for loop variable <varname>i</varname>.
- </para>
- <para>
- <filename>CollectionTest.java</filename> has also been updated and <filename>Animal.java</filename>, <filename>Mammal.java</filename>, <filename>Zoo.hbm.xml</filename> and <filename>Zoo.java</filename> have been added for testing purposes.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1467">JBPAPP-1467</ulink>: A <exceptionname>PropertyValueException</exceptionname> would occur when merging a detached instance of a <classname>One</classname> class that contains a new <classname>Many</classname> class instance and if and only if the <classname>One</classname> class was previously loaded as a proxy during the same transaction. The files <filename>StatefulPersistenceContext.java</filename>, <filename>BackrefPropertyAccessor.java</filename>, <filename>BackrefTest.java</filename> and <filename>Child.java</filename> have been updated to check for the proxy issue in the mergining and once the proxy entity is found the <methodname>mergeMap</methodname> is updated to deal with this eventuality.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1365">JBPAPP-1365</ulink>: A bug existed within Hibernate Core where the <methodname>addDuplicateAlias</methodname> method would include an entry into the hash map even when the <varname>classAlias</varname> variable was set to null; causing a <exceptionname>NullPointerException</exceptionname> when the <methodname>CrazyJPARRequirements()</methodname> method is called. To correct this issue the <filename>FromClause.java</filename> file has been modified to correct the <methodname>addDuplicateAlias</methodname> method by testing if the <varname>alias</varname> variable is null and if it is not null then the <methodname>fromElementByClassAlias.put</methodname> is now called, instead of this method being called even if <varname>alias</varname> contained a null value.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1259">JBPAPP-1259</ulink>: When using <methodname>dynamicUpdate</methodname> to generate SQL and the version field is specified by the user to not be updated, the <methodname>AbstractEntityPersiter.getPropertiesToUpdate</methodname> method would still update the field causing exceptions to appear in certain cases. Within this EAP update <filename>AbstractEntityPersister.java</filename> has been corrected to check if the user has expectly said that the version field should not be updated and does not update the field if this is the case.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1251">JBPAPP-1251</ulink>: Filters that were enabled for Hibernate did not apply to update and delete Hibernate Query Language (HQL) statements. In correcting this bug numerious files have been updated to ensure that the filters work correctly. This fix is related to JBPAPP-1250 below.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1250">JBPAPP-1250</ulink>: When creating queries with subqueries in Hibernate, any added filters would only apply to the top-level of the query and not to any subquery component or beneath. The Criteria code and HQL code asociated with this has undergone significant re-tooling to allow filters to work appropriatly with subqueries and extent as far as the Hibernate Query Language does.
- </para>
- <para>
- Though this is a significant fix to Hibernate, it has been included within this CP release because of its undeniable advantage to all users and ensures that filters on queries operate how a user would expect them to.
- </para>
- </listitem>
- </itemizedlist>
- </para>
- </formalpara>
- <formalpara>
- <title>Security Issues</title>
- <para>
- <itemizedlist>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1548">JBPAPP-1548</ulink>: An exploit existed within the JBoss Web Services component of the EAP that would allow anyone to view any xml file from any location if <literal>&resource=path/of/an/xmlfile.xml</literal> was applied to the end of any WSDL (Web Services Definition Language) access URL. The <filename>WSDLRequestHandler.java</filename> file has been updated to only allow the parent of a WSDL file, a servers data or WSDL or overriden WSDL publish directories access to xml file resources. Additional test files are also included which were created to ensure proper opperation was being undertaken. (CVE-2009-0027 )
- </para>
- </listitem>
- </itemizedlist>
- </para>
- </formalpara>
- <formalpara>
- <title>Documentation</title>
- <para>
- <itemizedlist>
- <listitem>
- <para>
- </para>
- </listitem>
- </itemizedlist>
- </para>
- </formalpara>
- <formalpara>
- <title>Core Server</title>
- <para>
- <itemizedlist>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1636">JBPAPP-1636</ulink>: When an adapter handled the scheduling of work to be performed, the <classname>ExecutionContext</classname> class contains a value in seconds, from which the <methodname>getCompletionTimeout</methodname> method of <classname>org.jboss.resource.work.WorkWrapper</classname> obtains its information. An issue arises with <methodname>getCompletionTimeout</methodname> expecting the value to be in milliseconds, creating an error where the initially set timeout value may be 6 seconds but be passed to the thread pool as 6 milliseconds. The <filename>WorkWrapper.java</filename> file has been updated and correctly converts the timeout value from seconds to milliseconds.
- </para>
- <important>
- <para>
- This bug only affected third party adapters running within the JBoss Application Server.
- </para>
- </important>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1635">JBPAPP-1635</ulink>: The <classname>OracleExceptionSorter</classname> has been enhanced for this release with new error codes of 17002 (connection reset) and 17008 (connection closed) now able to be handled. These enhancements have been applied to the <filename>OracleExceptionSorter.java</filename> file.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1602">JBPAPP-1602</ulink>: A <exceptionname>ConcurrentModificationException </exceptionname> would occur when a classloader would be undeployed while another user was attempting to load a class from the package. This error arose because the <classname>packagesMap</classname> within <classname>UnifiedLoaderRepository3</classname> had a <classname>TreeSet</classname> that was not correctly synchronized with changes. In order to rectify this, the <filename>ClassLoaderUtils.java</filename> file has been updated to import the <classname>Collections</classname> library and use the <methodname>synchronizedSet</methodname> method of the library in returning the <methodname>TreeSet</methodname> of the <methodname>newPackageSet</methodname> method.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1540">JBPAPP-1540</ulink>: Within the cluster section of the EAP, the <classname>GossipRouter</classname> and <classname>GossipClient</classname> (TCPGOSSIP) did not have socket read timeouts, socket linger timeouts and backlog set to provide the best behaviour when heavily utilized or under network situations in need of improvement. This fix provides default values and configuration options for these in order to avoid problematic situations.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1539">JBPAPP-1539</ulink>: When running parallel instances of the EAP on Linux a bug existed where messages between the JGroups component of each instance would be picked up by both because all messages sent to the port number for Multicast Sockets would be picked up by both instances. The issue has been fixed by re-writing the code for Multicast Sockets so that the constructor uses a group address along with the port number as identifiers. This ensures that an instance of the EAP only receives messages pertaining to its specific group and thus inhibits channel crosstalk.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1538">JBPAPP-1538</ulink>:The Probe Client had not been updated to use the same address as the Probe Listener does which is now 224.0.75.75. Correcting this issue, the Proble Client now uses 224.0.75.75 instead of 224.0.0.75 which allows the client and the listener to work together correctly.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1535">JBPAPP-1535</ulink>: The JDBCExtCacheLoader didn't handle persistent state transfter correctly since the <methodname>storeState</methodname> method would use avaliable space on the <classname>MarshalledValueInputStream</classname> instead of on the <classname>ByteArrayInputStream</classname>. To correct the stream usage, <filename>JDBCExtendedCacheLoader.java</filename> has been updated to store the new state using the <varname>in_stream</varname> value as long as there is space avaliable.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1534">JBPAPP-1534</ulink>: The JDBCCacheLoader didn't work with Sybase as it tried to set a null <varname>BLOB</varname> (Binary Large OBject) column which is unsupported in Sybase. To correct this the <filename>JDBCCacheLoader.java</filename> and <filename>AdjListJDBCCacheLoader.java</filename> files have been updated to select the Sybase Driver if Sybase is to be used, ensuring that null values are set as <varname>LONGVARBINARY</varname> rather than <varname>BLOB</varname>.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1532">JBPAPP-1532</ulink>: The JGroups clustering component of the EAP has been upgraded to version 2.4.5. A list of the included fixes is as follows:
- </para>
- <itemizedlist>
- <listitem>
- <para>
- The probe listener within JGroups still used the old default address of 224.0.0.75 instead of the new address of 224.0.75.75. The probe listener within JGroups has been updated with this release to use the correct default address.
- </para>
- </listitem>
- <listitem>
- <para>
- The MPING protocol which sends a multicast ping over TCP contained cross-talk in Linux. the MPING protocol has since been corrected to eliminate cross-talk on the Linux platform.
- </para>
- </listitem>
- <listitem>
- <para>
- A problem was encountered within JGroups when two distinct processes were setup on the same machine, each using a different stack with different UDP multicast addresses. The issue was that each process would not work correctly because of the other, as each process would receive incorrect datagrams in reference to the groups each joined. To correct this the <classname>MulticastSocket</classname> constructor is now used in combination with a <varname>SocketAddress</varname> when JGroups is used on the Linux platform.
- </para>
- </listitem>
- <listitem>
- <para>
- The <literal>Gossip Router</literal> component of JGroups provided options to set <literal>backlog</literal>, <literal>socket read timeout</literal> and <literal>socket linger timeout</literal> within the code, however these options are not avaliable via the command line. This update of the JGroups component, now includes the availability of these options to be set through the command line.
- </para>
- </listitem>
- <listitem>
- <para>
- Within the <literal>Gossip Router</literal> component of JGroups <methodname>Math.min</methodname> was used in calculating the socket linger timeout which caused incorrect results since this meant that the socket linger timeout would always be 1. <literal>Gossip Router</literal> has been updated to instead use <methodname>Math.max</methodname> in the calculation of the socket linger timeout.
- </para>
- </listitem>
- <listitem>
- <para>
- The <classname>RouterStub</classname> and <classname>GossipRouter</classname> classes have the <varname>setSoLinger</varname> value set incorrectly to use a seconds value when <varname>setSoLinger</varname> uses millisecond values. This meant that a value of 500 was 500 seconds rather than 500 milliseconds. The <classname>RouterStub</classname> class has had its <varname>setSoLinger</varname> corrected and the <classname>GossipRouter</classname> class has had the <varname>setSoLinger</varname> value corrected and timouts configurable.
- </para>
- </listitem>
- </itemizedlist>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1530">JBPAPP-1530</ulink>: The JCA adapter inflow did not roll back messages if a non-xa connection factory was being used within the JNDIProviderAdapter. In order to fix this issue the <filename>JmsServerSession.java</filename> file has been updated with added logic to the local transaction seperation strategy as to allow for non-xa sessions to be rolled back using transaction session.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1521">JBPAPP-1521</ulink>: The <classname>CleanShutdownInterceptor</classname> class would log a <exceptionname>GenericClusteringException</exceptionname> when the container had failed to shut down correctly or failed to start correctly and because of this behavior the error message displayed because of the exception should be updated to indicate that it may be an issue with the container failing to start instead of only failing to shut down. In this latest EAP update, the error message has been updated to reflect both situations which may be the cause of the exception.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1458">JBPAPP-1458</ulink>: The JTA recovery configuration did not contain a line to enable JBoss Messaging (JBM) <classname>XAResourceRecovery</classname> even though it is stated in the JBM user guide. This CP release modifies the <filename>build-distr.xml</filename> file to all <classname>XAResourceRecovery</classname> to be enabled for JTA recovery.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1479">JBPAPP-1479</ulink>: Within the different distributions of the EAP that are 4.2 and 4.3, both the <filename>JBossMQ</filename> and <filename>JBoss Messaging</filename> application policies have been present within the <filename>login-config.xml</filename> file, when <filename>JBossMQ</filename> is only included in the 4.2 distribution and <filename>JBoss Messaging</filename> is similarly only included in the 4.3 distribution.
- </para>
- <para>
- This has been rectified in this release by modifying <filename>build.xml</filename> and <filename>login-config.xml</filename> to differentiate between requirements for each individial distribution.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1473">JBPAPP-1473</ulink>: The <classname>IgnoreUndeployLegacyClusteredSessionNotificationPolicy</classname> within clustering didn't correctly call <classname>isHttpSessionListenerInvocationAllowed</classname>, which would lead to the repeated calling of itself and eventually <exceptionname>StackOverflow</exceptionname> errors. In order to correct this the <filename>IgnoreUndeployLegacyClusteredSessionNotificationPolicy.java</filename> file has been modified to correctly call <classname>isHttpSessionListenerInvocationAllowed</classname>.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1460">JBPAPP-1460</ulink>: The JavaServer Faces (JSF) has been updated to version 1.2_10 for this EAP release. This update corrects numerious bugs and details on these fixes can be found at <ulink url="https://javaserverfaces.dev.java.net/nonav/rlnotes/1.2_10/changelog.html">https://javaserverfaces.dev.java.net/nonav/rlnotes/1.2_10/changelog.html</ulink>
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1366">JBPAPP-1366</ulink>: Creation of the EJB <filename>TIMERS</filename> table fails when the <option>Oracle</option> schema is specified. To correct this the <filename>GeneralPurposeDatabasePersistencePlugin.java</filename> file has been updated with a calling to an new <methodname>SQLUtil.fixConstraintName</methodname> function which changes all dots in a constraint name to underscores. This ensures that constraint names are compatable with Oracle.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1307">JBPAPP-1307</ulink>: The Persistence Unit (PU) root was incorrectly detected within deployments that contained nested <filename>.jar</filename> files. The root PU was being detected as the first nested <filename>.jar</filename> encountered instead of being the deployment which contains the <filename>persistence.xml</filename> file. To make sure that the PU root is always set correctly, the <filename>JmxDeploymentUnit.java</filename> file has been updated with the removal of testing for the url being null and the <parameter>deploymentInfo.parent</parameter> not being null. This means that the url is now always taken straight from the <parameter>extractDescriptorUrl</parameter> of <filename>META-INF/persistence.xml</filename>.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1289">JBPAPP-1289</ulink>: The JBoss JAXR component of the EAP has been upgraded to version 1.2.0.SP2. A list of the included fixes is as follows:
- </para>
- <itemizedlist>
- <listitem>
- <para>
- In the <filename>org.jboss.jaxr.juddi.JUDDIServlet</filename> and <filename>org.jboss.jaxr.juddi.transport.SaajTransport</filename> files the namespace value for <varname>xml:lang</varname> contained <literal>http://www.w3.org/TR/REC-xml/</literal>, which caused an exception within the metro stack. The namespace value should instead be null and this has been applied for this JAXR update.
- </para>
- </listitem>
- </itemizedlist>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1275">JBPAPP-1275</ulink>: The Xalan part of the EAP has been upgraded from version 2.7.0 to 2.7.0.patch02. This upgrade removes the circumstance where an application which heavily used Xalan within large multi-threaded environments would encounter blocking situatinos.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1267">JBPAPP-1267</ulink>: <classname>UserTransaction</classname> (UT) was not able to be deployed with a clustered proxy that supported sticky transactions correctly. This has been fixed by modifying numerious files which make <classname>UserTransaction</classname> deployable with transaction sticky load balance policies.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1249">JBPAPP-1249</ulink>: The JSF component of the EAP has been upgraded to version 1.2_10. A list of the included fixes is as follows:
- </para>
- <itemizedlist>
- <listitem>
- <para>
- A mixed EL expression ending with a literal failed to parse as a managed bean property value. The <filename>BeanBuilder.java</filename> file was updarted with the removal of <code>ELUtils.getScope(this.expressionString, segment);</code> in order to fix this issue.
- </para>
- </listitem>
- <listitem>
- <para>
- <methodname>LifecycleImpl</methodname> and <methodname>RestoreViewPhase</methodname> forced the <methodname>responseComplete()</methodname> method for the status of an existing view. To correct this problem the <filename>RestoreViewPhase.java</filename> file has been edited with the code <code>facesContext.responseComplete();</code> removed and replaced with <code>facesContext.renderResponse();</code>.
- </para>
- </listitem>
- <listitem>
- <para>
- For a <h:dataTable> tag which does not set the <varname>var</varname> attribute, if the UIData component is created using a binding and calls the <methodname>setVar()</methodname> method to set the <varname>var</varname> attribute, it would be overwritten as a null value by the <h:dataTable> tag. This bug has been fixed by modifying the <filename>HtmlTaglib21Generator.java</filename> file so that component properties are not set if the tag attribute has not been set.
- </para>
- </listitem>
- <listitem>
- <para>
- The <classname>BindingValidator</classname> would generate a <exceptionname>ConverterException</exceptionname> instead of a <exceptionname>ValidatorException</exceptionname>. For this update, <classname>BindingValidator</classname> has been modified to generate the correct exception; <exceptionname>ValidatorException</exceptionname>.
- </para>
- </listitem>
- <listitem>
- <para>
- The cause of a <classname>PostConstruct</classname> exception within the <classname>BeanBuilder</classname> was not communicated to the user correctly. To correct the issue so that no information is hidden from the user, the <exceptionname>ManagedBeanCreationException</exceptionname> has been updated to provide more information about the cause of the exception.
- </para>
- </listitem>
- <listitem>
- <para>
- An issue was present that would cause majarra to execute <filename>faces-config.xml </filename> initialization files twice, creating duplicate operations. This was caused since a record was not kept of which files had been intialized and which had not. File initialization tracking has been implemented to correct this issue and this has seen the modification of the following files: <filename>ConfigManager.java</filename>, <filename>ConfigureListener.java</filename>, <filename>WebConfiguration.java</filename>, <filename>ConfigurationResourceProvider.java</filename>, <filename>MetaInfResourceProvider.java</filename>, <filename>RIConfigResourceProvider.java</filename> and <filename>WebResourceProvider.java</filename>.
- </para>
- </listitem>
- <listitem>
- <para>
- The <classname>com.sun.faces.renderkit.ApplicationObjectInputStream</classname> extends the functionality of <classname>java.io.ObjectInputStream</classname> but failed to preserve the functionality as <classname>com.sun.faces.renderkit.ApplicationObjectInputStream</classname> would fail when primitives were used, unlike the <classname>java.io.ObjectInputStream</classname> class which contains a special case to handle such a case. This would cause problems for <literal>UIComponents</literal>. <filename>ApplicationObjectInputStream.java</filename> has been updated to explicitly handle primitive cases and catch the <exceptionname>ClassNotFoundException</exceptionname> which may be generated.
- </para>
- </listitem>
- <listitem>
- <para>
- <classname>com.sun.faces.renderkit.html_basic.OutputLinkRenderer</classname> did not encode parameters correctly, missing the <literal>URLEncoding</literal>. <literal>URLEncoding</literal> has been added, correcting this bug, along with the parameter names.
- </para>
- </listitem>
- <listitem>
- <para>
- The <classname>com.sun.faces.renderkit.html_basic.BaseTableRenderer</classname> did not allow for empty <varname>columnClasses</varname> when generating columns from user unput. The issue was realizing when to create numerious columns rather just one; for instance if the user input <literal>foo, </literal> with a trailing space then the expected output would be one column with the name <literal>foo</literal> and another empty column. This was not the case though, as <literal>foo, </literal> would generate just one column with <literal>foo, </literal> in its entirety as the column name, instead of spliting the columns on the comma. This behaviour has now been corrected so that <classname>com.sun.faces.renderkit.html_basic.BaseTableRenderer</classname> no generates columns correctly, and in order to achieve this the following files have been updated: <filename>BasetableRenderer.java</filename>, <filename>GridRenderer.java</filename> and <filename>TableRenderer.java</!
filename>.
- </para>
- </listitem>
- <listitem>
- <para>
- The <classname>com.sun.faces.renderkit.html_basic.MenuRenderer</classname> class did not correctly differentiate between <literal>Objects</literal>; for instance the different between <literal>Boolean</literal> and <literal>boolean</literal>, noting the capitalization of the first. The error was with the logic in <classname>UISelect</classname> and <classname>MenuRenderer</classname>. To correct this, proper use of the converter for these classes has been implemented to deal with Objects correctly.
- </para>
- </listitem>
- <listitem>
- <para>
- <classname>com.sun.faces.lifecycle.RestoreViewPhase</classname> called <methodname>DebugUtil.printTree</methodname> after restoring the view if debugging was enabled, causing incorrect initialization of calls when a listbox is being used and returning an incorrect value in the <classname>RenderResponse</classname> phase. Method calls have been restructured with the removal of references to the <methodname>DebugUtil.printTree()</methodname> method from <filename>ViewHandlerImpl.java</filename> and <filename>RestoreViewPhase.java</filename> and <filename>RenderResponsePhase.java</filename> has been modified to call <methodname>DebugUtil.printTree</methodname> (if <varname>FINEST</varname> logging is enabled) at the end of the <classname>RenderResponse</classname> phase, fixing the issue (with the above changes also) and providing a more accurate view of the tree. </para>
- </listitem>
- <listitem>
- <para>
- <literal>CGLIB Enhanced UIComponents</literal> in a component tree would return a value of null for their class when calling <methodname>getPackage()</methodname> causing <classname>HtmlInputText.handleAttribute</classname> to fail as it relies on a not-nulll value. This issue has been corrected by ignoring a returned value of null from the <methodname>getPackage()</methodname> method for every instance in the codebase.
- </para>
- </listitem>
- <listitem>
- <para>
- The <classname>UIComponentBase</classname> did not allow for the children of a tree to be iterated through in reverse order using a list iterator as it would produce an <exceptionname>IndexOutOfBoundsException</exceptionname> when the execution tries to calculate the size of the children. <methodname>ChildrenListIterator</methodname> method has been modified within the <classname>UIComponentBase</classname> class by changing the line of code <code>if ((index < 0) || (index >= list.size())) { </code> to <code>if ((index < 0) || (index > list.size())) {</code>.
- </para>
- </listitem>
- <listitem>
- <para>
- Renderer kits for <filename>faces-config.xml</filename> were processed out of order depending on if <literal>ICEfaces</literal> or <literal>Mojara 1.2_09</literal> is in use. This occured due to containing all renderer DOM nods in a list associated with a namespace. This was done so that the renderer nodes could then be processed prior to the <literal>RenderKits</literal> being created and the nodes could be processed using the proper namespace. However, by placing all the renderers into this list, we lost the document ordering. The issue has been fixed by associating the renderer nodes with their owning document and processed in the parsing order.
-
- </para>
- </listitem>
- <listitem>
- <para>
- The <methodname>Class.getPackage()</methodname> method calls to synchronized methods, inhibiting scalability if the method has to be repeatedly executed. Use of the <methodname>Class.getPackage()</methodname> method has now been removed from <filename>UIComponent.java</filename>, <filename>RenderKitUtils.java</filename> and <filename>HtmlComponentGenerator.java</filename>. Instead, the class name is now checked if it starts with the package name that is of interest, <classname>javax.faces.component.</classname>. This includes the components that are generated by the <classname>HtmlComponentGenerator</classname> since they are packaged in <classname>javax.faces.component.html</classname>.
- </para>
- </listitem>
- <listitem>
- <para>
- A bug presented itself in the <classname>RenderKitUtils</classname> class when a semicolon (<code>;</code>) followed a forward-slash (<code>/</code>) in a header Accept value (for instance: <code>text/;q=0.5</code>). To rectify this issue the <classname>RenderKitUtils</classname> class has been updated to assume <code>*</code> as the subtype for an Accept header that contains no subtype.
- </para>
- </listitem>
- </itemizedlist>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1224">JBPAPP-1224</ulink>: Attribute default values in EJB were not set when in use with <literal>@Service</literal> and <literal>XMBean XML</literal> . In order to correct this the behavior has been re-written to improve the mimicking of <classname>ServerCreator</classname>.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1170">JBPAPP-1170</ulink>: When the <methodname>getMBeanInfo</methodname> method is called within <classname>MBeanServerImpl</classname> and <classname>RawDynamicInvoker</classname>, the underlying exception to <exceptionname>NotCompliantMBeanException</exceptionname> is not expressed to the user. <filename>RawDynamicInvoker.java</filename> has now been updated to provide this useful information to the user.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1099">JBPAPP-1099</ulink>: The <filename>commons-beanutils.jar</filename> file within the EAP had the incorrect version in the <filename>manifest.mf</filename> file. Through the course of correcting this bug, it was found that the <literal>beanutils</literal> component was outdated and a newer version contained manu advantages. In this update to the EAP <literal>beanutils</literal> has been upgraded to version 1.8.0, which sees the significant improvement that fixes a memory leak caused by a circular reference concerning the <classname>WeakHashMap</classname>.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1002">JBPAPP-1002</ulink>: Bean Managed Transactions (BMT) Stateful Session Beans used to be logged when transactions were not completed between invocations. However this was an error as BMT Stateful Session Beans are allowed to have this occurance and so this logging measure has been removed in this EAP update.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-996">JBPAPP-996</ulink>: Discrepancies existed between the port schemes within the <filename>sample-bindings.xml</filename> file. These include:
- </para>
- <itemizedlist>
- <listitem>
- <para>
- The remoting connectors were inserted in different places within the ports definition sections, making the comparison of the sections more difficult than was necessary.
- </para>
- </listitem>
- <listitem>
- <para>
- The <literal>ports-03</literal> section was missing the <literal>EJB remoting connector</literal> and the <literal>remoting connector</literal> sections.
- </para>
- </listitem>
- <listitem>
- <para>
- <literal>mq</literal> was used in the name property of the <varname>HAJNDIJMSProvider</varname> instead of <literal>jms</literal>.
- </para>
- </listitem>
- <listitem>
- <para>
- The <literal>ports-01</literal>, <literal>ports-02</literal>, and <literal>ports-03</literal> schemes defined the <varname>timeout</varname> attribute twice in the <literal>JBoss Messaging</literal> section:
-
- </para>
- </listitem>
- </itemizedlist>
- <para>
- The above issues have been fixed appropriately in this update.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-713">JBPAPP-713</ulink>: A Classloader leak existed causing a <errorname>OutOfMemoryError: PermGen</errorname> error. To correct this issue the EAP now uses <filename>beanutils 1.8.0</filename> which fixes this <errorname>OutOfMemoryError</errorname>.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-529">JBPAPP-529</ulink>: JMX source code was being exposed to the user when a <exceptionname>HTTP Status 500</exceptionname> exception would occur. To correct this, an error page <filename>genericError.jsp</filename> has been created and is now displayed whenever a <exceptionname>HTTP Status 500</exceptionname> exception occurs.
- </para>
- </listitem>
- </itemizedlist>
- </para>
- </formalpara>
- </section>
- <section id="Known_Issues_with_this_release">
- <title>
- Known Issues with this release
- </title>
- <para>
- Following is a list of known issues at the time of release.
- </para>
- <itemizedlist>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1286">JBPAPP-1286</ulink>: Footnotes within documentation tables and lists do not appear within PDFs. This issue resides within FOP and currently no workaround exists. Where possible footnotes are not used in the circumstances mentioned, however in documents such as the Release Notes the web address of a JIRA is automaticly generated as a footnote and places a number beside that of the JIRA, referencing a footnote that does not appear.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-909">JBPAPP-909</ulink>: Within the Hibernate component of the EAP the HashMap and HashSet iteration order changed from past releases because of support for JDK 1.6. However this has meant that the order of columns in union clauses and union-subclasses has changed, generating a slight impact on the components performance.
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-885">JBPAPP-885</ulink>: An issue exists where if <methodname>DefaultRedeliveryDelay</methodname> or <methodname>RedeliveryDelay</methodname> is set to a value apart from zero, messages will not be redelivered even though the method <methodname>session.rollback()</methodname> had been called. This issue will not be fixed because redelivery delay is handled on the server side and the message is already acknowledged before delivery of the message with a non durable subscription. For the Enterprise Application Platform, this means that redelivery delays with non durable subscriptions cannot be supported.
- </para>
- </listitem>
- </itemizedlist>
- </section>
--->
-<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="Revision_History.xml"/>
-
-</article>
15 years
JBoss Portal SVN: r13261 - docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/Read_Me/en-US.
by portal-commits@lists.jboss.org
Author: prabhat.jha(a)jboss.com
Date: 2009-04-22 10:37:09 -0400 (Wed, 22 Apr 2009)
New Revision: 13261
Added:
docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/Read_Me/en-US/Release_Notes.ent
docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/Read_Me/en-US/Release_Notes.xml
Modified:
docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/Read_Me/en-US/Book_Info.xml
Log:
update identity version and some minor versioning fix
Modified: docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/Read_Me/en-US/Book_Info.xml
===================================================================
--- docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/Read_Me/en-US/Book_Info.xml 2009-04-22 12:16:09 UTC (rev 13260)
+++ docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/Read_Me/en-US/Book_Info.xml 2009-04-22 14:37:09 UTC (rev 13261)
@@ -3,8 +3,8 @@
]>
<articleinfo>
- <title>Release Notes GA</title>
- <subtitle>for Use with JBoss Enterprise Portal Platform 4.3</subtitle>
+ <title>Release Notes</title>
+ <subtitle></subtitle>
<edition>1.0</edition>
<pubsnumber>6</pubsnumber>
<productname>JBoss Enterprise Portal Platform</productname>
Added: docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/Read_Me/en-US/Release_Notes.ent
===================================================================
--- docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/Read_Me/en-US/Release_Notes.ent (rev 0)
+++ docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/Read_Me/en-US/Release_Notes.ent 2009-04-22 14:37:09 UTC (rev 13261)
@@ -0,0 +1,3 @@
+<!ENTITY HOLDER "Red Hat, Inc">
+<!ENTITY YEAR "2008">
+<!ENTITY VERSION "4.3 CP01">
Added: docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/Read_Me/en-US/Release_Notes.xml
===================================================================
--- docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/Read_Me/en-US/Release_Notes.xml (rev 0)
+++ docs/enterprise/tags/Enterprise_Portal_Platform_4_3_GA_CP01/Read_Me/en-US/Release_Notes.xml 2009-04-22 14:37:09 UTC (rev 13261)
@@ -0,0 +1,873 @@
+<?xml version="1.0"?>
+<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!ENTITY % RH_ENTITIES SYSTEM "./Common_Config/rh-entities.ent">
+%RH_ENTITIES;
+]>
+<article id="JBEAP-Release-Notes">
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="Book_Info.xml"/>
+ <section id="Introduction">
+ <title>
+ Introduction
+ </title>
+ <para>
+ These release notes contain important information related to JBoss Enterprise Portal Platform &VERSION;. New features, known problems, resources, and other current issues are addressed here.
+ </para>
+ <section id="Overview">
+ <title>Overview</title>
+ <para>
+ JBoss Enterprise Portal Platform facilitates the delivery of web-based composite applications and high-performance web presences. Through its agile, reusable framework, customers can minimize the cost and complexity of their web infrastructures. Its use of open standards mitigates the risk of vendor lock-in, ensuring compatibility. As an integral component of JBoss Enterprise Middleware, the large and vibrant JBoss.org developer community fosters its continued innovation and enterprise quality. And it's deployed on JBoss Enterprise Application Platform—the industry’s #1 J2EE-certified application platform ensuring performance, scalability, and a reliable and straightforward path to implementation.
+ </para>
+ <para>
+JBoss Enterprise Application Platform is the next evolutionary step in open source enterprise software. It is a powerful tool for developing rich, high performance, Web 2.0 applications on a pure Java Platform.
+ </para>
+ <para>
+ JBoss Enterprise Application Platform provides complete compatibility with existing J2EE 1.4 enterprise Java applications. At the same time, almost all the key features and components defined in the Java EE 5.0 specification are supported. So your new enterprise Java applications can take immediate advantage of the Java EE 5.0's significantly simpler POJO-based programming model.
+ </para>
+ <para>
+ Further, by integrating best-of-breed open source frameworks such as JBoss Seam, Hibernate, Tomcat, and JBoss Cache the Platform takes advantage of innovations in the open source community. As well, JBoss Enterprise Application Platform is fully tested and supported by Red Hat, and is certified to work on many leading enterprise hardware and software products.
+ </para>
+ <para>
+ All of which means you can develop your new application taking advantage of Java EE 5.0 technologies immediately and with the confidence of knowing it will remain forward-compatible with future versions of the JBoss Platform.
+ </para>
+ </section>
+ </section>
+ <section id="New_Features">
+ <title>New Features in JBoss Enterprise Portal Platform 4.3</title>
+ <section id="JSR-286">
+ <title>Portlet 2.0 -JSR 286</title>
+ <para>
+ The main improvement of the Enterprise Portal Platform is the support of Portlet 2.0 specification which enables Inter Portlet Communication by sharing parameters and event support.
+ </para>
+ </section>
+ </section>
+ <section id="Component_Versions">
+ <title>Component Versions</title>
+ <para>
+ This section details the versions of the components which create the Enterprise Portal Platform 4.3 that can be found in release on top of the components delivered by the Enterprise Application Platform 4.3.CP04.
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ Identity Module 1.1.0
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ Common Module 1.2.4
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ Portlet Module 2.0.7
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ Web Module 1.2.3
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ CMS Module 1.2.5
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ JBoss Portlet Bridge 1.0.0.CR1
+ </para>
+ </listitem>
+ </itemizedlist>
+ <note>
+ <para>
+ The Enterprise Portal Platform Server has been redefined for the enterprise market to a level where direct association to a community release can no longer be drawn.
+ </para>
+ </note>
+ </section>
+ <section id="Product-Support-and-License-Links">
+ <title>
+ Product Support and License Website Links
+ </title>
+ <formalpara>
+ <title>Support Processes</title>
+ <para>
+ <ulink url="http://www.redhat.com/support/process/">http://www.redhat.com/support/process/</ulink>
+ </para>
+ </formalpara>
+
+ <formalpara>
+ <title>
+ Production Support Scope of Coverage
+ </title>
+ <para>
+ <ulink url="http://www.redhat.com/support/policy/soc/production">http://www.redhat.com/support/policy/soc/production</ulink>
+ </para>
+ </formalpara>
+
+
+ <formalpara>
+ <title>
+ Production Support Service Level Agreement
+ </title>
+
+ <para>
+ <ulink url="http://www.redhat.com/support/policy/sla/production/">http://www.redhat.com/support/policy/sla/production/</ulink>
+ </para>
+ </formalpara>
+
+ <formalpara>
+ <title>
+ Developer Support Scope of Coverage
+ </title>
+
+ <para>
+ <ulink url="http://www.redhat.com/support/policy/soc/developer/">http://www.redhat.com/support/policy/soc/developer/</ulink>
+ </para>
+ </formalpara>
+
+ <formalpara>
+ <title>
+ Developer Support Service Level Agreement
+ </title>
+
+ <para>
+ <ulink url="http://www.redhat.com/support/policy/sla/developer/">http://www.redhat.com/support/policy/sla/developer/</ulink>
+ </para>
+ </formalpara>
+
+ <formalpara>
+ <title>
+ Product Update and Support Policy by Product
+ </title>
+
+ <para>
+ <ulink url="http://www.redhat.com/security/updates/jboss_notes/">http://www.redhat.com/security/updates/jboss_notes/</ulink>
+ </para>
+ </formalpara>
+
+ <formalpara>
+ <title>
+ JBoss End User License Agreement
+ </title>
+
+ <para>
+ <ulink url="http://www.redhat.com/licenses/jboss_eula.html">http://www.redhat.com/licenses/jboss_eula.html</ulink>
+ </para>
+ </formalpara>
+ </section>
+<!--
+ <section id="Issues-fixed-in-this-release">
+ <title>
+ Issues fixed in this release
+ </title>
+
+ <para>
+ Following is a list of issues fixed in this release:
+ </para>
+ <formalpara>
+ <title>JBoss Messaging</title>
+ <para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1615">JBPAPP-1615</ulink>: The JBoss Messaging component of the EAP has been upgraded to version 1.4.0.SP3-CP05. A list of the included fixes is as follows:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ The <literal>default</literal> profile for JBoss without any reconfiguration uses the <classname>ClusteredConnectionFactory</classname> with a non-clustered post-office, however warnings would be loged about this behavior when the log messages should be reduced from a <varname>WARN</varname> level to an <varname>INFO</varname> level. The upgrade to this version of JBoss Messaging sees this implemented within the log.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <classname>ClusterViewUpdateTest</classname> was broken and did not work correctly in previous releases with the cause being that the expected time until failure detection for some clustering tests was too long. In order to correct this the values for <varname>validatorPingPeriod</varname> and <varname>validatorPingTimeout</varname> have been changed to be 2 seconds each, combining to 4 seconds as the total time until expected failure detection.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ Client connection parameters were not passed to the JBoss Remoting layer, forcing Remoting to use default values instead of user configured values. In order to use the correct values, <filename>JMSRemotingConnection.java</filename> has been updated so that the <methodname>Client.addConnectionListener</methodname> method is used with <varname>listener</varname> and <varname>serverLocator.gerParameters()</varname> as parameters.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ Messages which are sheduled for delivery in the future were not being removed correctly when the <methodname>removeAllMessages()</methodname> method was being called, causing the messages to bre requeued as soon as the application server or queue is restarted. <filename>ChannelSupport.java</filename> has been updated to import the <filename>TimeoutExt</filename> library in order to cast the timeout value to <filename>TimeoutExt</filename> in order to obtain the reference value via the <methodname>getTimeoutTarget()</methodname> method. With this new reference value information, the sheduled messages can be correctly removed from the queue.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ There was an occurance where a user may deploy a clustered queue in a single node instead of in all the nodes and the failover process would not work because of this. When this occurred an <exceptionname>IllegalStateException</exceptionname> would be generated, however this was not considered enough of a prominent warning about not deploying clustered queues correctly. <filename>MessagingPostOffice.java</filename> has now been updated to log a warning which outlies that clustered destinations must be deployed on all nodes of a cluster, instead of generating an <exceptionname>IllegalStateException</exceptionname>.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ The <classname>ClientAOPStackLoader</classname>, <classname>SecurityAspect.check()</classname> and <classname>ServerConnectionFactoryEndpoint</classname> needed to be able to optain TCL within a privileged block, otherwise an <exceptionname>AccessControlException</exceptionname> is produced. To fix this bug, the <methodname>setTCL</methodname>, <methodname>getTCL</methodname> and other TCL methods have been set within security blocks; this prevents access denied exceptions from <classname>ClientAOPStackLoader</classname>, <classname>SecurityAspect.check()</classname> and <classname>ServerConnectionFactoryEndpoint</classname>.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ The logging of actions within JBoss Messaging did not include the logging of messages when they are moved to the expiry or dead letter queues as this was only logged at trace level. In order to add this enhanced level of logging, the <filename>ClientConsumer.java</filename> file has been updated to log warning messages and debug information pertaining to the move of messages to the expiry or dead letter queues; <filename>ServerSessionEndpoint.java</filename> has also been updated in the same mannor.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ There was an error when a message was received under a XA tx and the JBoss Messaging XAResource is prepared but not committed, a message could be received by another consumer in another transaction while the first is still in progress. The correct behaviour is for JBoss Messaging to hold the message until the associated transaction is committed or rolled back, enabling duplication of message deliveries to be avoided. In the <filename>Delivery.java</filename> file, messages are now marked with a boolean value detailing if they are for delivery with a XA transaction and if this transaction is prepared and <filename>SimpleDelivery.java</filename> now implements this new information.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ The <methodname>shutdownNow()</methodname> method was not synchronized and may cause a <exceptionname>NoSuchElementException</exceptionname> during runtime as a result. A synchronization block has been placed around the <methodname>shutdownNow()</methodname> code within <filename>OrderedExecutorFactory.java</filename>.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ There was an issue with the <classname>org.jboss.jms.server.messagecounter.MessageCounter</classname> class not being serializable as it caused an <exceptionname>UndeclaredThrowableException</exceptionname>. <filename>MessageCounter.java</filename> has been updated to now import and implement the <literal>Serializable</literal> library and be given a <varname>serialVersionUID</varname>, allowing the <classname>org.jboss.jms.server.messagecounter.MessageCounter</classname> class to be serializable.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ When the methods <methodname>unregisterSucker()</methodname> or <methodname>registerSucker()</methodname> was called a <exceptionname>ConcurrentModificationException</exceptionname> would be generated by the time the <literal>HashSet</literal> containing the <literal>suckers</literal> was iterated. The issue would present itself on clusters with a magnitude of nodes (for instance it appeared on a 8 node cluster but not a 4 node cluster). This bug was corrected by creating an iterator that used a private set of <literal>suckers</literal> for iteration through the <literal>HashSet</literal> of <literal>suckers</literal> in order to avoid the exception.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ The bridge within JBoss Messaging would only retry connection creation to a remote destination after startup and if the remote provider was not available at startup, the bridge would fail to start. The <filename>Bridge.java</filename> and <filename>BridgeService.java</filename> files have undergone extensive modification and now the <literal>factory</literal> is set to the <literal>bridge</literal> which undertakes the lookup itself instead of looking up the destinations.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+ </itemizedlist>
+ </para>
+ </formalpara>
+ <formalpara>
+ <title>JBoss Cache</title>
+ <para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1533">JBPAPP-1533</ulink>: The JBoss Cache component of the EAP has been upgraded to version 1.4.1.SP11. A list of the included fixes is as follows:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ The <classname>JDBCCacheLoader</classname> implementation did not work with Sybase as it would try to set a null <varname>BLOB</varname> column which is unsupported within Sybase. To correct this the <filename>JDBCCacheLoader.java</filename> file has been updated so that the Sybase Driver sets a null <varname>LONGVARBINARY</varname> value, allowing the <classname>JDBCCacheLoader</classname> implementation to work correctly.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ The <classname>JDBCExtCacheLoader</classname> did not handle persistent state transfer correctly since the <methodname>JDBCExtCacheLoader.storeState()</methodname> method would use avaliable bytes on the <classname>MarshalledValueInputStream</classname> rather than on the <classname>ByteArrayInputStream</classname> when storing the persistent state. This was an issue because the <classname>MarshalledValueInputStream</classname> always returns a null value, meaning the persistent state was never written. In fixing this issue the <filename>JDBCExtendedCacheLoader.java</filename> file has been modified so that it specifies to check for avaliable space on the <classname>ByteArrayInputStream</classname>.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+ </itemizedlist>
+ </para>
+ </formalpara>
+ <formalpara>
+ <title>JBoss Remoting</title>
+ <para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1531">JBPAPP-1531</ulink>: The JBoss Remoting component of the EAP has been upgraded to version 2.2.2.SP11. A list of the included fixes is as follows:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ The <methodname>ConnectionValidator.run()</methodname> method had the ability to be called by a user before the private method <methodname>ConnectionValidator.start()</methodname> was called, resulting in the <varname>clientInvoker</varname> and <varname>timer</varname> fields being set to null and generating a <exceptionname>NullPointerException</exceptionname>. Within the <filename>ConnectionValidator.java</filename> file the fields are now checked to see if they are null upon execution of the <methodname>ConnectionValidator.run()</methodname> method, one or both are then an <exceptionname>IllegalStateException</exceptionname> is displayed to the user outlining that <methodname>ConnectionValidator.run()</methodname> should not be called directly but <methodname>addConnectionListener()</methodname> should be used instead.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ Two bugs existed within the <methodname>org.jboss.remoting.marshal.MarshallerLoaderHandler.loadClassBytes()</methodname> method that prohibited remote classloading to work correctly with isolated EARs. The first was that a while loop in the code needed a break and the second was that the call to the <methodname>org.jboss.mx.loading.LoaderRepository.getCachedClass()</methodname> method should have been a general call to <methodname>LoaderRepository.loadClass()</methodname>. These two issues have been rectified with this Remoting update, allowing remote classloading to function correctly.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ A bug existed within the Remoting component by which the RemotingClassLoader would always attempt to load a class over the network first if remote classloading was enabled, leading to conflicts if the class was avaliable locally before. The code has been corrected to check locally first before looking remotely.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ The <classname>ServerInvokerCallbackHandler</classname> class would become unresponsive when calling the <methodname>BlockingCallbackStore.add()</methodname> method after locking the callback field with a true responce from the <methodname>persistCallback()</methodname> method. This would occur because the <methodname>BlockingCallbackStore.getNext()</methodname> needed to control the lock on the callback field to break the waiting period, however this could not be achieved because of the wait period. To fix this issue the call to the <methodname>BlockingCallbackStore.add()</methodname> method has been removed as it was an unnecessary step.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ The <classname>HTTPClientInvoker</classname> did not support Beginner's All-purpose Symbolic Instruction Code (BASIC) authentication for proxies when the proxy was configured through system property options of <methodname>http.proxyHost</methodname> and <methodname>http.proxyPort</methodname>. The issue appears because the <classname>HTTPClientInvoker</classname> would not check for the existence of these options and in tern it would never create a <methodname>Proxy-Authorization</methodname> request header, which is necessary for normal opperation. To fix this the <classname>HTTPClientInvoker</classname> has been modified to check for the existence of the <methodname>http.proxyHost</methodname> option and if it detects its use, creates a <methodname>Proxy-Authorization</methodname> request header.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <classname>HTTPClientInvoker</classname> would generate a <exceptionname>NullPointerException</exceptionname> when the HTTP server returned an error code without any content and then the <methodname>java.net.HttpUrlConnection.getInputStream()</methodname> method returned a null value. In order to improve control over this behavior, the new variable <varname>UNMARSHAL_NULL_STREAM</varname> has been added to the <classname>HTTPClientInvoker</classname>. If this variable is set to true (the default value) the default behavior is executed, however if it is set to false the call to the <methodname>UnMarshaller.read()</methodname> is skipped.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ Within the <classname>InvokerRegistry</classname> an error existed associated with the sequencing of events and <classname>serverLocators</classname> would return a null on occasion. To correct this race condition, the sequencing of events within the <classname>InvokerRegistry</classname> has been rearragned so that references to <classname>transportClientFactoryClasses</classname> and <classname>clientLocators</classname> are governed by <classname>clientLock</classname> and references to <classname>transportServerFactoryClasses</classname>, <classname>serverLocators</classname>, and <classname>registeredLocators</classname> are governed by <classname>serverLock</classname>.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ A bug existed where the value in the client configuration map of the <classname>ConnectionValidator</classname> would be ignored when the overloaded <methodname>org.jboss.remoting.Client</methodname> method was called and the <varname>DEFAULT_PING_PERIOD</varname> variable value was placed into the metadata map passed to the <classname>ConnectionValidator</classname>. This has been corrected by updating <classname>org.jboss.remoting.Client.addConnectionListener</classname> so that <varname>DEFAULT_PING_PERIOD</varname> is only passed if the value of <varname>VALIDATOR_PING_PERIOD</varname> within the client's configuration map has not been set.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <classname>ConnectionValidator</classname> may become unresponsive then the <methodname>run()</methodname> method is executed and utilizes the <varname>lock</varname> variable. The methods within the <methodname>run()</methodname> method are meant to time out so that the <varname>lock</varname> variable can become avaliable to the <methodname>notifyListeners()</methodname> in the event of a network failure; however <methodname>run()</methodname> may execute again before <methodname>notifyListeners()</methodname> can. The synchronization on the <varname>lock</varname> variable has been modified to avoid this issue to enable correct operation.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ During occurances of the server being under heavy load, an <exceptionname>IllegalStateException</exceptionname> would occur within the <methodname>ConnectorValidator.run()</methodname> method because further synchronization on the <varname>lock</varname> variable was necessary. This issue was fixed during the rectification of the above problem.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ A synchronization error within the <classname>MarshalFactory</classname> was allowing a subsystem to add a marshaller at the same time as EJB3 was trying to extract one causing users to receive an <exceptionname>InvalidMarshallingResource</exceptionname> exception; this also applied to unmarshallers. The error has been fixed by updating the <filename>jboss-remoting.jar</filename> file to include synchronized static Maps within the <classname>MarshalFactory</classname>.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ The <classname>SocketServerInvoker</classname> had an issue when shutting down <varname>ServerThreads</varname> causing a user to possibly receive an invocation to a closed <classname>SocketServerInvoker</classname> on the client side, causing an <exceptionname>InvalidStateException</exceptionname>. Allowing this exception would cause a clustered EJB3 system to generate a <exceptionname>UndeclaredThrowableException</exceptionname> instead of trying alternative servers. To allow for alternatives to be attempted, an optional behavior of allowing the <classname>MicroRemoteClientInvoker</classname> to interpret an <exceptionname>InvalidStateException</exceptionname> as a <exceptionname>CannotConnectException</exceptionname>, allowing for other servers to be attempted.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+ </itemizedlist>
+ </para>
+ </formalpara>
+ <formalpara>
+ <title>JBoss Web</title>
+ <para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1493">JBPAPP-1493</ulink>: An error would be shown on occassion by <emphasis>Internet Explorer</emphasis> because xml content would not be sent when <emphasis>PROPFIND</emphasis> requests were being used. This has been fixed by creating a new method within <filename>WebdavServlet.java</filename> that overrides the <methodname>DefaultServlet</methodname> implementation for servlet request processing and testing for input before launching the <methodname>DocumentBuilder</methodname>.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1470">JBPAPP-1470</ulink>: When using APR (Apache Portable Runtime) on any operating system other than those which use the Linux Kernal 2.4 or newer, the <parameter>deferAccept</parameter> option would be set to false in the <methodname>AprEndpoint</methodname>. This may lead to a <exceptionname>NullPointerException</exceptionname> as the <methodname>accepter</methodname> thread starts to process a request while also calling for a <methodname>poller</methodname> before initialization. The issue has been resolved by moving the <methodname>acceptor</methodname> threads to being executed last when starting the <methodname>AprEndpoint</methodname>.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1334">JBPAPP-1334</ulink>: The JBoss Web component of the EAP has been upgraded to version 2.0.0-6.CP09. A list of the included fixes is as follows:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ If a war deployment included its own version of <filename>xalan.jar</filename> and <filename>xercesImpl.jar</filename> in <filename>WEB-INF/lib</filename>, the JBossWeb servlet container classloader returns JBoss provided version of the <literal>SAXParser</literal> from <methodname>SAXParserFactory.newInstance().newSAXParser()</methodname> rather than the version provided in the war deployment. To fix this bug the <filename>WebAppClassLoader.java</filename> has been updated to ensure the correct parser is used.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+ </itemizedlist>
+ </para>
+ </formalpara>
+ <formalpara>
+ <title>JBoss Web Services</title>
+ <para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1552">JBPAPP-1552</ulink>: When deploying JBoss Web Services within EAP without internet access, <classname>JBossWSEntityResolver</classname> would not resolve any schemas causing Web Services for Remote Portlets (WSRP) to produce an error. This issue has been fixed by modifying <classname>JBossWSEntityResolver</classname> within <filename>WSDL11Reader.java</filename> to resolve schemas locally when an internet connection is unavaliable.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1449">JBPAPP-1449</ulink>: WSProvide would ignore a <literal>SOAPBinding</literal> declaration specified in the EJB3 stateless session bean. To correct this and allow <literal>SOAPBinding</literal> to work as expected the following files have been modified: <filename>WSDLGenerator.java</filename>, <filename>SOAPEndpoint.java</filename>, <filename>Constants.java</filename>, <filename>WSDLWriter.java</filename>, <filename>SOAPBindingTestCase.java</filename> and <filename>WSDL11Writer.java</filename>.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1439">JBPAPP-1439</ulink>: The component <emphasis>Xerces</emphasis> of JBoss Web Services has a feature that optimises the parsing of messages called <methodname>Deffered Node Expansion</methodname>.This defers node expansion until the nodes are accessed, improving performance where not all nodes need to be visited. However memory overheads are increased, which can be considerable for large messages.
+ </para>
+ <para>
+ This release grants the user an option to disable the <methodname>Deffered Node Expansion</methodname> feature and have all nodes expand. To achieve this the following system property needs to be set:
+ </para>
+<programlisting>
+-Dorg.jboss.ws.disable_deferred_node_expansion=true
+</programlisting>
+ </listitem>
+ </itemizedlist>
+ </para>
+ </formalpara>
+ <formalpara>
+ <title>JBoss Seam</title>
+ <para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1553">JBPAPP-1553</ulink>: When the <methodname>parseRequest()</methodname> method of the <classname>org.jboss.seam.web.MultipartRequest</classname> class uploaded a large file, there were occurances when this would cause an endless loop and use 100% of the computers CPU. In order to break out of the loop, a <varname>loopCounter</varname> has been implemented within the <filename>MultipartRequest.java</filename> file.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1494">JBPAPP-1494</ulink>: The portal example that was previously included with the Seam EAP distribution has been removed in order to avoid confusion that Seam 1.2.1 included with the EAP supports portal.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1044">JBPAPP-1044</ulink>: After basic interaction with the Seam examples <filename>chatroom</filename>, <filename>mail</filename>, <filename>registration</filename>, <filename>booking</filename> and <filename>dvdstore</filename> would generate a <exceptionname>NullPointerException</exceptionname> during undeployment. In correcting this issue, the <filename>RootInterceptor.java</filename> file was updated to check if an applications context still active upon undeployment and deal with this appropriately.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </para>
+ </formalpara>
+ <formalpara>
+ <title>JBoss Hibernate</title>
+ <para>
+ <itemizedlist>
+ <important>
+ <para>
+ Hibernate Core has been updated to an enhanced 3.2.4.sp1.cp07 version. The following issues represent the changes for this version.
+ </para>
+ </important>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1628">JBPAPP-1628</ulink>: In an earlier fix to Hibernate the <methodname>org.hibernate.jdbc.AbstractBatcher#closeQueryStatement()</methodname> method was changed to check for the existance of the prepared statement in the <classname>statementsToClose</classname> collection instead of closing it unconditionally. This has now caused a properties leak as the <methodname>org.hibernate.persister.entity.AbstractEntityPersister#processGeneratedProperties()</methodname> used <methodname>org.hibernate.jdbc.AbstractBatcher#closeQueryStatement()</methodname> and the statement within <methodname>org.hibernate.persister.entity.AbstractEntityPersister#processGeneratedProperties()</methodname> is not added to the <classname>statementsToClose</classname> collection.
+ </para>
+ <para>
+ <filename>AbstractEntityPersister.java</filename> has been updated to execute a prepared statement on the result set and after calculating the <varname>propValue</varname> the result set is closed if it is not null; ensuring that no leak can occur.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1582">JBPAPP-1582</ulink>:
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1524">JBPAPP-1524</ulink>: The Sybase functions <methodname>second()</methodname>, <methodname>minute()</methodname>, <methodname>hour()</methodname> and <methodname>extract()</methodname> caused a <exceptionname>GenericJDBCException</exceptionname> when used. Moving these functions from the <filename>SQLServerDialect.java</filename> file to the <filename>SybaseDialect.java</filename> file allows for these functions to work correctly.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1519">JBPAPP-1519</ulink>: Sybase does not support the opperation <emphasis>on cascade delete</emphasis> while SQL Server does. To make sure that both opperate correctly the <filename>SQLServerDialect.java</filename> file has been updated to include a new <methodname>supportsCascadeDelete()</methodname> method which returns true and <filename>SybaseDialect.java</filename> has been updated to include a new <methodname>supportsCascadeDelete()</methodname> method which returns false.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1496">JBPAPP-1496</ulink>: A memory leak existed because of an unclosed <emphasis>ResultSet</emphasis> when using the <emphasis>Identity</emphasis> generator option. To close the memory leak, the <emphasis>ResultSet</emphasis> is checked to make sure it is closed before returning the generated itentity value.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1480">JBPAPP-1480</ulink>: Hibernate would attempt to read from an invalid column in the collection result set when the following conditions were present:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ Instances of a subclass were contained in a collection.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ The subclasses were single-table and used a <join> (table-per-subclass with discriminator).
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ The <join> portion of the subclass contained at least 3 of its own columns.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ The <join> tables were fetched by select and not the default method for this task.
+ </para>
+ </listitem>
+ </itemizedlist>
+ <para>
+ To fix this isue the <filename>AbstractEntityPersister.java</filename> file was updated so that the <varname>columnNumber</varname> variable is passed to the <methodname>subclassColumnSelectableClosure</methodname> method instead of an increment of the for loop variable <varname>i</varname>.
+ </para>
+ <para>
+ <filename>CollectionTest.java</filename> has also been updated and <filename>Animal.java</filename>, <filename>Mammal.java</filename>, <filename>Zoo.hbm.xml</filename> and <filename>Zoo.java</filename> have been added for testing purposes.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1467">JBPAPP-1467</ulink>: A <exceptionname>PropertyValueException</exceptionname> would occur when merging a detached instance of a <classname>One</classname> class that contains a new <classname>Many</classname> class instance and if and only if the <classname>One</classname> class was previously loaded as a proxy during the same transaction. The files <filename>StatefulPersistenceContext.java</filename>, <filename>BackrefPropertyAccessor.java</filename>, <filename>BackrefTest.java</filename> and <filename>Child.java</filename> have been updated to check for the proxy issue in the mergining and once the proxy entity is found the <methodname>mergeMap</methodname> is updated to deal with this eventuality.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1365">JBPAPP-1365</ulink>: A bug existed within Hibernate Core where the <methodname>addDuplicateAlias</methodname> method would include an entry into the hash map even when the <varname>classAlias</varname> variable was set to null; causing a <exceptionname>NullPointerException</exceptionname> when the <methodname>CrazyJPARRequirements()</methodname> method is called. To correct this issue the <filename>FromClause.java</filename> file has been modified to correct the <methodname>addDuplicateAlias</methodname> method by testing if the <varname>alias</varname> variable is null and if it is not null then the <methodname>fromElementByClassAlias.put</methodname> is now called, instead of this method being called even if <varname>alias</varname> contained a null value.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1259">JBPAPP-1259</ulink>: When using <methodname>dynamicUpdate</methodname> to generate SQL and the version field is specified by the user to not be updated, the <methodname>AbstractEntityPersiter.getPropertiesToUpdate</methodname> method would still update the field causing exceptions to appear in certain cases. Within this EAP update <filename>AbstractEntityPersister.java</filename> has been corrected to check if the user has expectly said that the version field should not be updated and does not update the field if this is the case.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1251">JBPAPP-1251</ulink>: Filters that were enabled for Hibernate did not apply to update and delete Hibernate Query Language (HQL) statements. In correcting this bug numerious files have been updated to ensure that the filters work correctly. This fix is related to JBPAPP-1250 below.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1250">JBPAPP-1250</ulink>: When creating queries with subqueries in Hibernate, any added filters would only apply to the top-level of the query and not to any subquery component or beneath. The Criteria code and HQL code asociated with this has undergone significant re-tooling to allow filters to work appropriatly with subqueries and extent as far as the Hibernate Query Language does.
+ </para>
+ <para>
+ Though this is a significant fix to Hibernate, it has been included within this CP release because of its undeniable advantage to all users and ensures that filters on queries operate how a user would expect them to.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </para>
+ </formalpara>
+ <formalpara>
+ <title>Security Issues</title>
+ <para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1548">JBPAPP-1548</ulink>: An exploit existed within the JBoss Web Services component of the EAP that would allow anyone to view any xml file from any location if <literal>&resource=path/of/an/xmlfile.xml</literal> was applied to the end of any WSDL (Web Services Definition Language) access URL. The <filename>WSDLRequestHandler.java</filename> file has been updated to only allow the parent of a WSDL file, a servers data or WSDL or overriden WSDL publish directories access to xml file resources. Additional test files are also included which were created to ensure proper opperation was being undertaken. (CVE-2009-0027 )
+ </para>
+ </listitem>
+ </itemizedlist>
+ </para>
+ </formalpara>
+ <formalpara>
+ <title>Documentation</title>
+ <para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ </para>
+ </listitem>
+ </itemizedlist>
+ </para>
+ </formalpara>
+ <formalpara>
+ <title>Core Server</title>
+ <para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1636">JBPAPP-1636</ulink>: When an adapter handled the scheduling of work to be performed, the <classname>ExecutionContext</classname> class contains a value in seconds, from which the <methodname>getCompletionTimeout</methodname> method of <classname>org.jboss.resource.work.WorkWrapper</classname> obtains its information. An issue arises with <methodname>getCompletionTimeout</methodname> expecting the value to be in milliseconds, creating an error where the initially set timeout value may be 6 seconds but be passed to the thread pool as 6 milliseconds. The <filename>WorkWrapper.java</filename> file has been updated and correctly converts the timeout value from seconds to milliseconds.
+ </para>
+ <important>
+ <para>
+ This bug only affected third party adapters running within the JBoss Application Server.
+ </para>
+ </important>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1635">JBPAPP-1635</ulink>: The <classname>OracleExceptionSorter</classname> has been enhanced for this release with new error codes of 17002 (connection reset) and 17008 (connection closed) now able to be handled. These enhancements have been applied to the <filename>OracleExceptionSorter.java</filename> file.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1602">JBPAPP-1602</ulink>: A <exceptionname>ConcurrentModificationException </exceptionname> would occur when a classloader would be undeployed while another user was attempting to load a class from the package. This error arose because the <classname>packagesMap</classname> within <classname>UnifiedLoaderRepository3</classname> had a <classname>TreeSet</classname> that was not correctly synchronized with changes. In order to rectify this, the <filename>ClassLoaderUtils.java</filename> file has been updated to import the <classname>Collections</classname> library and use the <methodname>synchronizedSet</methodname> method of the library in returning the <methodname>TreeSet</methodname> of the <methodname>newPackageSet</methodname> method.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1540">JBPAPP-1540</ulink>: Within the cluster section of the EAP, the <classname>GossipRouter</classname> and <classname>GossipClient</classname> (TCPGOSSIP) did not have socket read timeouts, socket linger timeouts and backlog set to provide the best behaviour when heavily utilized or under network situations in need of improvement. This fix provides default values and configuration options for these in order to avoid problematic situations.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1539">JBPAPP-1539</ulink>: When running parallel instances of the EAP on Linux a bug existed where messages between the JGroups component of each instance would be picked up by both because all messages sent to the port number for Multicast Sockets would be picked up by both instances. The issue has been fixed by re-writing the code for Multicast Sockets so that the constructor uses a group address along with the port number as identifiers. This ensures that an instance of the EAP only receives messages pertaining to its specific group and thus inhibits channel crosstalk.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1538">JBPAPP-1538</ulink>:The Probe Client had not been updated to use the same address as the Probe Listener does which is now 224.0.75.75. Correcting this issue, the Proble Client now uses 224.0.75.75 instead of 224.0.0.75 which allows the client and the listener to work together correctly.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1535">JBPAPP-1535</ulink>: The JDBCExtCacheLoader didn't handle persistent state transfter correctly since the <methodname>storeState</methodname> method would use avaliable space on the <classname>MarshalledValueInputStream</classname> instead of on the <classname>ByteArrayInputStream</classname>. To correct the stream usage, <filename>JDBCExtendedCacheLoader.java</filename> has been updated to store the new state using the <varname>in_stream</varname> value as long as there is space avaliable.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1534">JBPAPP-1534</ulink>: The JDBCCacheLoader didn't work with Sybase as it tried to set a null <varname>BLOB</varname> (Binary Large OBject) column which is unsupported in Sybase. To correct this the <filename>JDBCCacheLoader.java</filename> and <filename>AdjListJDBCCacheLoader.java</filename> files have been updated to select the Sybase Driver if Sybase is to be used, ensuring that null values are set as <varname>LONGVARBINARY</varname> rather than <varname>BLOB</varname>.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1532">JBPAPP-1532</ulink>: The JGroups clustering component of the EAP has been upgraded to version 2.4.5. A list of the included fixes is as follows:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ The probe listener within JGroups still used the old default address of 224.0.0.75 instead of the new address of 224.0.75.75. The probe listener within JGroups has been updated with this release to use the correct default address.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ The MPING protocol which sends a multicast ping over TCP contained cross-talk in Linux. the MPING protocol has since been corrected to eliminate cross-talk on the Linux platform.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ A problem was encountered within JGroups when two distinct processes were setup on the same machine, each using a different stack with different UDP multicast addresses. The issue was that each process would not work correctly because of the other, as each process would receive incorrect datagrams in reference to the groups each joined. To correct this the <classname>MulticastSocket</classname> constructor is now used in combination with a <varname>SocketAddress</varname> when JGroups is used on the Linux platform.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ The <literal>Gossip Router</literal> component of JGroups provided options to set <literal>backlog</literal>, <literal>socket read timeout</literal> and <literal>socket linger timeout</literal> within the code, however these options are not avaliable via the command line. This update of the JGroups component, now includes the availability of these options to be set through the command line.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ Within the <literal>Gossip Router</literal> component of JGroups <methodname>Math.min</methodname> was used in calculating the socket linger timeout which caused incorrect results since this meant that the socket linger timeout would always be 1. <literal>Gossip Router</literal> has been updated to instead use <methodname>Math.max</methodname> in the calculation of the socket linger timeout.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ The <classname>RouterStub</classname> and <classname>GossipRouter</classname> classes have the <varname>setSoLinger</varname> value set incorrectly to use a seconds value when <varname>setSoLinger</varname> uses millisecond values. This meant that a value of 500 was 500 seconds rather than 500 milliseconds. The <classname>RouterStub</classname> class has had its <varname>setSoLinger</varname> corrected and the <classname>GossipRouter</classname> class has had the <varname>setSoLinger</varname> value corrected and timouts configurable.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1530">JBPAPP-1530</ulink>: The JCA adapter inflow did not roll back messages if a non-xa connection factory was being used within the JNDIProviderAdapter. In order to fix this issue the <filename>JmsServerSession.java</filename> file has been updated with added logic to the local transaction seperation strategy as to allow for non-xa sessions to be rolled back using transaction session.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1521">JBPAPP-1521</ulink>: The <classname>CleanShutdownInterceptor</classname> class would log a <exceptionname>GenericClusteringException</exceptionname> when the container had failed to shut down correctly or failed to start correctly and because of this behavior the error message displayed because of the exception should be updated to indicate that it may be an issue with the container failing to start instead of only failing to shut down. In this latest EAP update, the error message has been updated to reflect both situations which may be the cause of the exception.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1458">JBPAPP-1458</ulink>: The JTA recovery configuration did not contain a line to enable JBoss Messaging (JBM) <classname>XAResourceRecovery</classname> even though it is stated in the JBM user guide. This CP release modifies the <filename>build-distr.xml</filename> file to all <classname>XAResourceRecovery</classname> to be enabled for JTA recovery.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1479">JBPAPP-1479</ulink>: Within the different distributions of the EAP that are 4.2 and 4.3, both the <filename>JBossMQ</filename> and <filename>JBoss Messaging</filename> application policies have been present within the <filename>login-config.xml</filename> file, when <filename>JBossMQ</filename> is only included in the 4.2 distribution and <filename>JBoss Messaging</filename> is similarly only included in the 4.3 distribution.
+ </para>
+ <para>
+ This has been rectified in this release by modifying <filename>build.xml</filename> and <filename>login-config.xml</filename> to differentiate between requirements for each individial distribution.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1473">JBPAPP-1473</ulink>: The <classname>IgnoreUndeployLegacyClusteredSessionNotificationPolicy</classname> within clustering didn't correctly call <classname>isHttpSessionListenerInvocationAllowed</classname>, which would lead to the repeated calling of itself and eventually <exceptionname>StackOverflow</exceptionname> errors. In order to correct this the <filename>IgnoreUndeployLegacyClusteredSessionNotificationPolicy.java</filename> file has been modified to correctly call <classname>isHttpSessionListenerInvocationAllowed</classname>.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1460">JBPAPP-1460</ulink>: The JavaServer Faces (JSF) has been updated to version 1.2_10 for this EAP release. This update corrects numerious bugs and details on these fixes can be found at <ulink url="https://javaserverfaces.dev.java.net/nonav/rlnotes/1.2_10/changelog.html">https://javaserverfaces.dev.java.net/nonav/rlnotes/1.2_10/changelog.html</ulink>
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1366">JBPAPP-1366</ulink>: Creation of the EJB <filename>TIMERS</filename> table fails when the <option>Oracle</option> schema is specified. To correct this the <filename>GeneralPurposeDatabasePersistencePlugin.java</filename> file has been updated with a calling to an new <methodname>SQLUtil.fixConstraintName</methodname> function which changes all dots in a constraint name to underscores. This ensures that constraint names are compatable with Oracle.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1307">JBPAPP-1307</ulink>: The Persistence Unit (PU) root was incorrectly detected within deployments that contained nested <filename>.jar</filename> files. The root PU was being detected as the first nested <filename>.jar</filename> encountered instead of being the deployment which contains the <filename>persistence.xml</filename> file. To make sure that the PU root is always set correctly, the <filename>JmxDeploymentUnit.java</filename> file has been updated with the removal of testing for the url being null and the <parameter>deploymentInfo.parent</parameter> not being null. This means that the url is now always taken straight from the <parameter>extractDescriptorUrl</parameter> of <filename>META-INF/persistence.xml</filename>.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1289">JBPAPP-1289</ulink>: The JBoss JAXR component of the EAP has been upgraded to version 1.2.0.SP2. A list of the included fixes is as follows:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ In the <filename>org.jboss.jaxr.juddi.JUDDIServlet</filename> and <filename>org.jboss.jaxr.juddi.transport.SaajTransport</filename> files the namespace value for <varname>xml:lang</varname> contained <literal>http://www.w3.org/TR/REC-xml/</literal>, which caused an exception within the metro stack. The namespace value should instead be null and this has been applied for this JAXR update.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1275">JBPAPP-1275</ulink>: The Xalan part of the EAP has been upgraded from version 2.7.0 to 2.7.0.patch02. This upgrade removes the circumstance where an application which heavily used Xalan within large multi-threaded environments would encounter blocking situatinos.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1267">JBPAPP-1267</ulink>: <classname>UserTransaction</classname> (UT) was not able to be deployed with a clustered proxy that supported sticky transactions correctly. This has been fixed by modifying numerious files which make <classname>UserTransaction</classname> deployable with transaction sticky load balance policies.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1249">JBPAPP-1249</ulink>: The JSF component of the EAP has been upgraded to version 1.2_10. A list of the included fixes is as follows:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ A mixed EL expression ending with a literal failed to parse as a managed bean property value. The <filename>BeanBuilder.java</filename> file was updarted with the removal of <code>ELUtils.getScope(this.expressionString, segment);</code> in order to fix this issue.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <methodname>LifecycleImpl</methodname> and <methodname>RestoreViewPhase</methodname> forced the <methodname>responseComplete()</methodname> method for the status of an existing view. To correct this problem the <filename>RestoreViewPhase.java</filename> file has been edited with the code <code>facesContext.responseComplete();</code> removed and replaced with <code>facesContext.renderResponse();</code>.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ For a <h:dataTable> tag which does not set the <varname>var</varname> attribute, if the UIData component is created using a binding and calls the <methodname>setVar()</methodname> method to set the <varname>var</varname> attribute, it would be overwritten as a null value by the <h:dataTable> tag. This bug has been fixed by modifying the <filename>HtmlTaglib21Generator.java</filename> file so that component properties are not set if the tag attribute has not been set.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ The <classname>BindingValidator</classname> would generate a <exceptionname>ConverterException</exceptionname> instead of a <exceptionname>ValidatorException</exceptionname>. For this update, <classname>BindingValidator</classname> has been modified to generate the correct exception; <exceptionname>ValidatorException</exceptionname>.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ The cause of a <classname>PostConstruct</classname> exception within the <classname>BeanBuilder</classname> was not communicated to the user correctly. To correct the issue so that no information is hidden from the user, the <exceptionname>ManagedBeanCreationException</exceptionname> has been updated to provide more information about the cause of the exception.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ An issue was present that would cause majarra to execute <filename>faces-config.xml </filename> initialization files twice, creating duplicate operations. This was caused since a record was not kept of which files had been intialized and which had not. File initialization tracking has been implemented to correct this issue and this has seen the modification of the following files: <filename>ConfigManager.java</filename>, <filename>ConfigureListener.java</filename>, <filename>WebConfiguration.java</filename>, <filename>ConfigurationResourceProvider.java</filename>, <filename>MetaInfResourceProvider.java</filename>, <filename>RIConfigResourceProvider.java</filename> and <filename>WebResourceProvider.java</filename>.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ The <classname>com.sun.faces.renderkit.ApplicationObjectInputStream</classname> extends the functionality of <classname>java.io.ObjectInputStream</classname> but failed to preserve the functionality as <classname>com.sun.faces.renderkit.ApplicationObjectInputStream</classname> would fail when primitives were used, unlike the <classname>java.io.ObjectInputStream</classname> class which contains a special case to handle such a case. This would cause problems for <literal>UIComponents</literal>. <filename>ApplicationObjectInputStream.java</filename> has been updated to explicitly handle primitive cases and catch the <exceptionname>ClassNotFoundException</exceptionname> which may be generated.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <classname>com.sun.faces.renderkit.html_basic.OutputLinkRenderer</classname> did not encode parameters correctly, missing the <literal>URLEncoding</literal>. <literal>URLEncoding</literal> has been added, correcting this bug, along with the parameter names.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ The <classname>com.sun.faces.renderkit.html_basic.BaseTableRenderer</classname> did not allow for empty <varname>columnClasses</varname> when generating columns from user unput. The issue was realizing when to create numerious columns rather just one; for instance if the user input <literal>foo, </literal> with a trailing space then the expected output would be one column with the name <literal>foo</literal> and another empty column. This was not the case though, as <literal>foo, </literal> would generate just one column with <literal>foo, </literal> in its entirety as the column name, instead of spliting the columns on the comma. This behaviour has now been corrected so that <classname>com.sun.faces.renderkit.html_basic.BaseTableRenderer</classname> no generates columns correctly, and in order to achieve this the following files have been updated: <filename>BasetableRenderer.java</filename>, <filename>GridRenderer.java</filename> and <filename>TableRenderer.java</!
filename>.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ The <classname>com.sun.faces.renderkit.html_basic.MenuRenderer</classname> class did not correctly differentiate between <literal>Objects</literal>; for instance the different between <literal>Boolean</literal> and <literal>boolean</literal>, noting the capitalization of the first. The error was with the logic in <classname>UISelect</classname> and <classname>MenuRenderer</classname>. To correct this, proper use of the converter for these classes has been implemented to deal with Objects correctly.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <classname>com.sun.faces.lifecycle.RestoreViewPhase</classname> called <methodname>DebugUtil.printTree</methodname> after restoring the view if debugging was enabled, causing incorrect initialization of calls when a listbox is being used and returning an incorrect value in the <classname>RenderResponse</classname> phase. Method calls have been restructured with the removal of references to the <methodname>DebugUtil.printTree()</methodname> method from <filename>ViewHandlerImpl.java</filename> and <filename>RestoreViewPhase.java</filename> and <filename>RenderResponsePhase.java</filename> has been modified to call <methodname>DebugUtil.printTree</methodname> (if <varname>FINEST</varname> logging is enabled) at the end of the <classname>RenderResponse</classname> phase, fixing the issue (with the above changes also) and providing a more accurate view of the tree. </para>
+ </listitem>
+ <listitem>
+ <para>
+ <literal>CGLIB Enhanced UIComponents</literal> in a component tree would return a value of null for their class when calling <methodname>getPackage()</methodname> causing <classname>HtmlInputText.handleAttribute</classname> to fail as it relies on a not-nulll value. This issue has been corrected by ignoring a returned value of null from the <methodname>getPackage()</methodname> method for every instance in the codebase.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ The <classname>UIComponentBase</classname> did not allow for the children of a tree to be iterated through in reverse order using a list iterator as it would produce an <exceptionname>IndexOutOfBoundsException</exceptionname> when the execution tries to calculate the size of the children. <methodname>ChildrenListIterator</methodname> method has been modified within the <classname>UIComponentBase</classname> class by changing the line of code <code>if ((index < 0) || (index >= list.size())) { </code> to <code>if ((index < 0) || (index > list.size())) {</code>.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ Renderer kits for <filename>faces-config.xml</filename> were processed out of order depending on if <literal>ICEfaces</literal> or <literal>Mojara 1.2_09</literal> is in use. This occured due to containing all renderer DOM nods in a list associated with a namespace. This was done so that the renderer nodes could then be processed prior to the <literal>RenderKits</literal> being created and the nodes could be processed using the proper namespace. However, by placing all the renderers into this list, we lost the document ordering. The issue has been fixed by associating the renderer nodes with their owning document and processed in the parsing order.
+
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ The <methodname>Class.getPackage()</methodname> method calls to synchronized methods, inhibiting scalability if the method has to be repeatedly executed. Use of the <methodname>Class.getPackage()</methodname> method has now been removed from <filename>UIComponent.java</filename>, <filename>RenderKitUtils.java</filename> and <filename>HtmlComponentGenerator.java</filename>. Instead, the class name is now checked if it starts with the package name that is of interest, <classname>javax.faces.component.</classname>. This includes the components that are generated by the <classname>HtmlComponentGenerator</classname> since they are packaged in <classname>javax.faces.component.html</classname>.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ A bug presented itself in the <classname>RenderKitUtils</classname> class when a semicolon (<code>;</code>) followed a forward-slash (<code>/</code>) in a header Accept value (for instance: <code>text/;q=0.5</code>). To rectify this issue the <classname>RenderKitUtils</classname> class has been updated to assume <code>*</code> as the subtype for an Accept header that contains no subtype.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1224">JBPAPP-1224</ulink>: Attribute default values in EJB were not set when in use with <literal>@Service</literal> and <literal>XMBean XML</literal> . In order to correct this the behavior has been re-written to improve the mimicking of <classname>ServerCreator</classname>.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1170">JBPAPP-1170</ulink>: When the <methodname>getMBeanInfo</methodname> method is called within <classname>MBeanServerImpl</classname> and <classname>RawDynamicInvoker</classname>, the underlying exception to <exceptionname>NotCompliantMBeanException</exceptionname> is not expressed to the user. <filename>RawDynamicInvoker.java</filename> has now been updated to provide this useful information to the user.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1099">JBPAPP-1099</ulink>: The <filename>commons-beanutils.jar</filename> file within the EAP had the incorrect version in the <filename>manifest.mf</filename> file. Through the course of correcting this bug, it was found that the <literal>beanutils</literal> component was outdated and a newer version contained manu advantages. In this update to the EAP <literal>beanutils</literal> has been upgraded to version 1.8.0, which sees the significant improvement that fixes a memory leak caused by a circular reference concerning the <classname>WeakHashMap</classname>.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1002">JBPAPP-1002</ulink>: Bean Managed Transactions (BMT) Stateful Session Beans used to be logged when transactions were not completed between invocations. However this was an error as BMT Stateful Session Beans are allowed to have this occurance and so this logging measure has been removed in this EAP update.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-996">JBPAPP-996</ulink>: Discrepancies existed between the port schemes within the <filename>sample-bindings.xml</filename> file. These include:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ The remoting connectors were inserted in different places within the ports definition sections, making the comparison of the sections more difficult than was necessary.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ The <literal>ports-03</literal> section was missing the <literal>EJB remoting connector</literal> and the <literal>remoting connector</literal> sections.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <literal>mq</literal> was used in the name property of the <varname>HAJNDIJMSProvider</varname> instead of <literal>jms</literal>.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ The <literal>ports-01</literal>, <literal>ports-02</literal>, and <literal>ports-03</literal> schemes defined the <varname>timeout</varname> attribute twice in the <literal>JBoss Messaging</literal> section:
+
+ </para>
+ </listitem>
+ </itemizedlist>
+ <para>
+ The above issues have been fixed appropriately in this update.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-713">JBPAPP-713</ulink>: A Classloader leak existed causing a <errorname>OutOfMemoryError: PermGen</errorname> error. To correct this issue the EAP now uses <filename>beanutils 1.8.0</filename> which fixes this <errorname>OutOfMemoryError</errorname>.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-529">JBPAPP-529</ulink>: JMX source code was being exposed to the user when a <exceptionname>HTTP Status 500</exceptionname> exception would occur. To correct this, an error page <filename>genericError.jsp</filename> has been created and is now displayed whenever a <exceptionname>HTTP Status 500</exceptionname> exception occurs.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </para>
+ </formalpara>
+ </section>
+ <section id="Known_Issues_with_this_release">
+ <title>
+ Known Issues with this release
+ </title>
+ <para>
+ Following is a list of known issues at the time of release.
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-1286">JBPAPP-1286</ulink>: Footnotes within documentation tables and lists do not appear within PDFs. This issue resides within FOP and currently no workaround exists. Where possible footnotes are not used in the circumstances mentioned, however in documents such as the Release Notes the web address of a JIRA is automaticly generated as a footnote and places a number beside that of the JIRA, referencing a footnote that does not appear.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-909">JBPAPP-909</ulink>: Within the Hibernate component of the EAP the HashMap and HashSet iteration order changed from past releases because of support for JDK 1.6. However this has meant that the order of columns in union clauses and union-subclasses has changed, generating a slight impact on the components performance.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <ulink url="http://jira.jboss.com/jira/browse/JBPAPP-885">JBPAPP-885</ulink>: An issue exists where if <methodname>DefaultRedeliveryDelay</methodname> or <methodname>RedeliveryDelay</methodname> is set to a value apart from zero, messages will not be redelivered even though the method <methodname>session.rollback()</methodname> had been called. This issue will not be fixed because redelivery delay is handled on the server side and the message is already acknowledged before delivery of the message with a non durable subscription. For the Enterprise Application Platform, this means that redelivery delays with non durable subscriptions cannot be supported.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </section>
+-->
+<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="Revision_History.xml"/>
+
+</article>
15 years
JBoss Portal SVN: r13260 - branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/src/org/jboss/portal/test/selenium.
by portal-commits@lists.jboss.org
Author: vrockai
Date: 2009-04-22 08:16:09 -0400 (Wed, 22 Apr 2009)
New Revision: 13260
Modified:
branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/src/org/jboss/portal/test/selenium/JBossPortalSeleniumTestCase.java
Log:
[selenium] - global timeout fix
Modified: branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/src/org/jboss/portal/test/selenium/JBossPortalSeleniumTestCase.java
===================================================================
--- branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/src/org/jboss/portal/test/selenium/JBossPortalSeleniumTestCase.java 2009-04-22 09:42:34 UTC (rev 13259)
+++ branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/src/org/jboss/portal/test/selenium/JBossPortalSeleniumTestCase.java 2009-04-22 12:16:09 UTC (rev 13260)
@@ -69,6 +69,7 @@
selenium.start();
selenium.setTimeout(PAGE_LOAD);
selenium.setSpeed("0");
+ selenium.setTimeout(PAGE_LOAD);
}
@AfterClass
15 years
JBoss Portal SVN: r13259 - in branches/Enterprise_Portal_Platform_4_3_GA_JBEPP-60: theme/src/bin/portal-ajax-war/dyna and 1 other directory.
by portal-commits@lists.jboss.org
Author: mageshbk(a)jboss.com
Date: 2009-04-22 05:42:34 -0400 (Wed, 22 Apr 2009)
New Revision: 13259
Modified:
branches/Enterprise_Portal_Platform_4_3_GA_JBEPP-60/core/src/main/org/jboss/portal/core/theme/WindowContextFactory.java
branches/Enterprise_Portal_Platform_4_3_GA_JBEPP-60/theme/src/bin/portal-ajax-war/dyna/dyna.js
Log:
[JBEPP-60] - Merged JBEPP-34 Partial refresh is not updating the content
Modified: branches/Enterprise_Portal_Platform_4_3_GA_JBEPP-60/core/src/main/org/jboss/portal/core/theme/WindowContextFactory.java
===================================================================
--- branches/Enterprise_Portal_Platform_4_3_GA_JBEPP-60/core/src/main/org/jboss/portal/core/theme/WindowContextFactory.java 2009-04-22 08:50:27 UTC (rev 13258)
+++ branches/Enterprise_Portal_Platform_4_3_GA_JBEPP-60/core/src/main/org/jboss/portal/core/theme/WindowContextFactory.java 2009-04-22 09:42:34 UTC (rev 13259)
@@ -1,6 +1,6 @@
/******************************************************************************
* JBoss, a division of Red Hat *
- * Copyright 2006, Red Hat Middleware, LLC, and individual *
+ * Copyright 2009, Red Hat Middleware, LLC, and individual *
* contributors as indicated by the @authors tag. See the *
* copyright.txt in the distribution for a full listing of *
* individual contributors. *
@@ -25,11 +25,11 @@
import org.jboss.portal.Mode;
import org.jboss.portal.WindowState;
import org.jboss.portal.core.controller.ControllerContext;
-import org.jboss.portal.core.model.portal.PortalObjectPath;
import org.jboss.portal.core.model.portal.Window;
import org.jboss.portal.core.model.portal.command.action.InvokePortletWindowRenderCommand;
import org.jboss.portal.core.model.portal.command.response.MarkupResponse;
import org.jboss.portal.core.model.portal.content.WindowRendition;
+import org.jboss.portal.portlet.impl.jsr168.PortletUtils;
import org.jboss.portal.server.ServerInvocationContext;
import org.jboss.portal.server.request.URLContext;
import org.jboss.portal.server.request.URLFormat;
@@ -84,7 +84,7 @@
//
return new WindowContext(
- window.getId().toString(PortalObjectPath.LEGACY_BASE64_FORMAT),
+ PortletUtils.generateNamespaceFrom(window.getId().toString()),
region,
order,
windowResult);
Modified: branches/Enterprise_Portal_Platform_4_3_GA_JBEPP-60/theme/src/bin/portal-ajax-war/dyna/dyna.js
===================================================================
--- branches/Enterprise_Portal_Platform_4_3_GA_JBEPP-60/theme/src/bin/portal-ajax-war/dyna/dyna.js 2009-04-22 08:50:27 UTC (rev 13258)
+++ branches/Enterprise_Portal_Platform_4_3_GA_JBEPP-60/theme/src/bin/portal-ajax-war/dyna/dyna.js 2009-04-22 09:42:34 UTC (rev 13259)
@@ -225,13 +225,13 @@
*/
function copyInnerHTML(srcContainer, dstContainer, className)
{
- var srcs = Element.getElementsByClassName(srcContainer, className);
+ var srcs = srcContainer.select("." + className);
if (srcs.length == 1)
{
var src = srcs[0];
//
- var dsts = Element.getElementsByClassName(dstContainer, className)
+ var dsts = dstContainer.select("." + className);
if (dsts.length == 1)
{
var dst = dsts[0];
15 years
JBoss Portal SVN: r13258 - branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/src/org/jboss/portal/test/selenium.
by portal-commits@lists.jboss.org
Author: vrockai
Date: 2009-04-22 04:50:27 -0400 (Wed, 22 Apr 2009)
New Revision: 13258
Modified:
branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/src/org/jboss/portal/test/selenium/JBossPortalSeleniumTestCase.java
Log:
[selenium] - shorter timeout
Modified: branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/src/org/jboss/portal/test/selenium/JBossPortalSeleniumTestCase.java
===================================================================
--- branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/src/org/jboss/portal/test/selenium/JBossPortalSeleniumTestCase.java 2009-04-21 17:43:50 UTC (rev 13257)
+++ branches/JBoss_Portal_Branch_2_7/testsuite/ui-tests/src/org/jboss/portal/test/selenium/JBossPortalSeleniumTestCase.java 2009-04-22 08:50:27 UTC (rev 13258)
@@ -48,7 +48,7 @@
* Generic timeout in miliseconds used in every selenium function
* waitForPageToLoad()}
*/
- public static final String PAGE_LOAD = "2400000";
+ public static final String PAGE_LOAD = "180000";
/** Generic timeout in miliseconds used for AJAX timeouts } */
public static final long AJAX_LOAD = 3000;
15 years