[News & Announcements] - JBossAS 4.2.0.CR1 released
by rrajesh
JBoss 4.2.0.CR1 has been released and is available for download on Sourceforge.
http://sourceforge.net/project/showfiles.php?group_id=22866&package_id=16...
JBoss AS 4.2.0.CR1 Release Notes
This is the first Candidate Release of jboss-4.2.0. JBoss 4.2 is a stepping stone from JBoss 4.0 to JBoss 5.0. It combines a lot (but not all) of the exciting new features of JBoss 5, but based on the stable 4.x MicroKernel architecture.
For information on the APIs that make up Java EE 1.4, see Java EE v1.4 Documentation. For a comprehensive tutorial on Java EE 1.4, see The Java EE? 1.4 Tutorial. A jboss-4.2.x getting started guide that is based on contents from the tutorial can be found in JBoss Application Server Documentation Library
Note: The 4.2.x release of the JBoss Application Server provides support for certain JavaEE5 features, such as EJB3, but it is not Java EE5 certified.
Overview
* Highlights
* Known Compatibility Issues
* Known Configuration Issues
* JBoss/Thirdparty Library Updates
* Detailed Release Notes
* Additional Docs and Help
* Licenses
* About JBoss
Highlights
* JDK5 is *required* to run JBossAS 4.2.x. The decision was based on the fact that JDK1.4 is phased out and the reality that a lot of people like Java Annotations support and want to combine EJB3 and JBoss Seam components with JBossAS. JDK6 is not formally supported yet, although you may be able to start the server with it. JDK6 support will come with JBossAS 5.x.
* JBoss EJB3 is now deployed *by default* in JBossAS 4.2.x The fact that we base on JDK5 makes our life easier in this regard, meaning we don't have to maintain jdk5 code retro-weaved for jdk1.4 runtimes, and we can include by default components that require jdk5 to run.
* JBoss Web v2.x is the web container in JBossAS 4.2, an implementation based on Apache Tomcat that includes the Apache Portable Runtime (APR) and Tomcat native technologies to achieve scalability and performance characteristics that match and exceed the Apache Http server. In the absence of the native libraries in the JBoss classpath, JBoss Web falls back to the standard non-native connector mode. The native libraries need to be downloaded and installed separately.
* JBoss Transactions v4.2 is the default transaction manager for JBossAS 4.2. JBoss Transactions is founded on industry proven technology and 18 year history as a leader in distributed transactions, and is one of the most interoperable implementations available. The JTA version of JBoss Transactions included with the server provides for fully recoverable transactions. For distributed transaction support the JTS version of JBoss Transactions will need to be used. Furthermore, it is always possible to fall back to the legacy JBossTM fast in-memory transaction manager implementation, if necessary.
* JBossWS is the web services stack for JBoss 4.2 providing Java EE compatible web services. It has been upgraded to v1.2.0.GA
* JGroups/JBossCache were upgraded to the latest releases. The server is already configured to support channel multiplexing, when it becomes available.
Minor feature additions.
* Remote access to MBeanInfo of JMX mbeans with non-serializable attributes over the InvokerAdaptorService, JBAS-1955.
* More options for externalizing LoginModule secrets, JBAS-2895.
* New quartz JCA inflow adapter, JBAS-3206.
* Support of transaction timeouts for MDBs, JBAS-3321.
* Extenstions in the BarrierController to allow wider lifecycle control options, JBAS-3469.
* Configurable policies for determining the master node for HASingletons, JBAS-2499.
* Fast datasource failover, when using the highly available datasource resource adapter, JBAS-3851.
* The higly available (HA) version of the local and xa resource adapters (jboss-ha-local-jdbc.rar, jboss-ha-xa-jdbc.rar), are now consider production quality.
* The JBoss javax.management.timer.Timer implementation has been cloned into a difference package for use with a JDK5 runtime, JBAS-3870.
* .EAR files support ./lib directory, JBAS-4037.
Plus more than 50 bug fixes, see the Detailed Release Notes section for the full details.
Compatibility Issues
This lists the changes that could affect compatibility.
* A JavaSE 5 runtime is required to run JBossAS 4.2. A full JDK with tools.jar support is no longer needed by jboss, since JBoss Web packages the eclipse JDT compiler for compiling JSP pages and javassist has its own internal compiler. JAVA_HOME can point to a JRE, JBAS-4161.
*
According to our product versioning rules, JBossAS 4.2 is a minor upgrade against JBoss AS 4.0. The various JBoss APIs should be stable but backwards compatibility for individual component implementations may not be guaranteed, e.g. interoperating with another JBoss instance that uses an older version of JGroups.
* Tomcat 6 is now bundled as part of JBoss Web. deploy/jbossweb-tomcat55.sar has been replaced by deploy/jboss-web.deployer.
* conf/log4j.xml has been renamed to conf/jboss-log4j.xml, to allow log4j.properties override from scoped deployments, JBAS-1853.
* log4j and commons-logging have both been upgraded. commons-logging is patched in addition, JBAS-2823.
* Better integration with WebSphere MQ 5.x, JBAS-3183.
* The MyFaces JSF implementation has been replaced by the Glassfish JSF 1.2 one, JBAS-3897.
* Hibernate, hibernate-annotations and hibernate-entity-manager have all been upgraded. to v3.2.1.
* The default invoker for EJBs has been changed from the rmi-invoker to the unified-invoker, provided by JBoss Remoting, JBAS-3950.
Configuration Issues
This lists the changes that could affect configuration.
* JBossAS now binds its services to localhost (127.0.0.1) *by default*, instead of binding to all available interfaces (0.0.0.0). This was primarily done for security reasons because of concerns of users going to production without having secured their servers properly. To bind JBoss services to a particular interface, simply run jboss with the -b option.
* There now distinct properties to configure the various mcast ports, JBAS-4021.
* JBoss EJB3 is now included by default. If you don't need/want EJB3 support, simply remove deploy/ejb3.deployer.
* When using native libraries for JBoss Web store them in JBOSS_HOME/bin/native, which is automatically included in the classpath, JBAS-4162.
* JBoss Transactions is the new default transaction manager in JBoss. It is configured in conf/jboss-service.xml and has additional properties defined in conf/jbossjta-properties.xml. The transaction log is stored by default at server/default/data/tx-object-store.
* If you are on redhat linux, check out the changes in bin/jboss_init_redhat.sh, JBAS-4041.
* The JBossAS distributions now include the installer (.jar), the sources (.tar.gz) and the canonical binary release (.zip). Unzipping the binary distribution (.zip) with a native unzip utility will restore correctly the executable permission in the /bin/*.sh files. However, unzipping using the JDK jar utility ignores the executable bit, so this need to be set manually.
Library Updates
Against JBossAS 4.0.5.GA
JBoss Library Updates
* hibernate, upgraded to v3.2.1.GA (from v3.2.0.GA)
* hibernate-annotations upgraded to v3.2.1.GA (from v3.2.0.GA)
* hibernate-entitymanager upgraded to v3.2.1.GA (from v3.2.0.GA)
* javassist, upgraded to v3.5.0.CR1 (from v3.3.0.GA)
* jboss-aop, upgraded to v1.5.4.SP2 (from v1.5.2.GA)
* jboss-backport-concurrent v2.1.0.GA removed
* jboss-cache, upgraded to v1.4.1.SP2 (from v1.4.0.SP1)
* jboss-common, upgraded to v1.0.4.GA (from v1.0.0.GA)
* jboss-ts14, introduced at v4.2.3.CR3
* jboss-retro-rt, v1.0.3.GA removed
* jbossws, upgraded to v1.2.0.GA (from v1.0.3.SP1)
* jboss-we4ee, v4.0.4.SP1 removed
* jbossxb, upgraded to v1.0.0.CR9 (from v1.0.0.CR6)
* jboss-remoting, upgraded to v2.0.0.GA (from v1.4.3.GA)
* jboss-vfs, introduced at v1.0.0.Beta
* jboss-web, introduced at v2.0.0.CR1
* jgroups, upgraded to v2.4.1.GA (from v2.2.7.SP1)
Thirdparty Library Updates
* apache-addressing, at v7-19, removed
* apache-digester, upgraded to v1.7 (from v1.6)
* apache-discovery, upgraded to v0.4 (from v0.2)
* apache-fileupload, upgraded to v1.1.1 (from v1.0)
* apache-httpclient, upgraded to v3.0.1 (from v2.0.2)
* apache-log4j, upgraded to v1.2.14 (from v1.2.8)
* apache-logging, upgraded to v1.1.0.jboss (from v1.0.5-jboss)
* apache-myfaces, v1.1.4 removed
* apache-slide, upgrade to v2.1 (from v1.0.16)
* apache-tomcat, upgraded to v5.5.20 removed
* apache-wss4j, v7-19, removed
* gnu-getopt, upgraded to v1.0.12 (from v1.0.10)
* jaxen, upgraded to v1.1 (from v1.1-beta9)
* junit, upgraded to v3.8.2 (from v3.8.1)
* sleepycat at v1.5.2 removed
* stax-api, introduced at v1.0
* sun-jaxb, introduced at v2.0.3
* sun-jsf, introduced at v1.2_03
* sun-jstl, introduced at v1.2
* sun-servlet, upgraded to v2.5 (from v2.4)
* woodstox, introduced at v3.1.1
* wutka-dtdparser at v1.2.1 removed
* xdoclet, upgraded to v1.2.3 (from v1.2b3)
* xml-sax, at v2.0.x removed
Detailed Release Notes
Includes versions: JBossAS-4.2.0.CR1
Feature Request
* [ JBAS-1824 ] JACC: * in web.xml should allow configurable authorization bypass
* [ JBAS-1955 ] XMBean Interceptor for InvokerAdaptorService to deal with NonSerializableExceptions
* [ JBAS-2249 ] Cleanup the org.jboss.naming packaging
* [ JBAS-2523 ] Add a multi-thread option to JndiLoginInitialContextFactory.
* [ JBAS-2895 ] Extend SecureIdentityLoginModule to externalize the secret
* [ JBAS-3206 ] Quartz resource adaptor integration
* [ JBAS-3321 ] Support for "method-attributes" including "transaction-timeout" for MDBs
* [ JBAS-3469 ] Enhance the BarrierController with the ability to destroy/re-create the Barrier
* [ JBAS-3675 ] Add LockOwnerName to ThreadDump output from ServerInfo
* [ JBAS-3769 ] JBossMail Adapter needs logging improvements
* [ JBAS-3847 ] Extend EJBContext.getRollbackOnly to cover transactions which have been asynchronously rolled back
* [ JBAS-3851 ] Slow DataSource Failover - JCA Stale Connection Detection
* [ JBAS-3870 ] Clone the JBossMX javax.management.timer.Timer implementation, to a jboss package
* [ JBAS-3966 ] Add a VersionNumber attribute on the jboss.system:type=Server mbean
* [ JBAS-4037 ] Add support for ear lib directory
* [ JBAS-4047 ] PooledInvokerProxy.getPooledConnection() could hold a lock for shorter period of time
* [ JBAS-4127 ] Need an example datasource for MSSQL 2005
Bug
* [ JBAS-1537 ] When Tomcat error handler is invoked, JBossGenericPrincipal is returned instead of custom principal
* [ JBAS-2215 ] Datasource deployments should only depend on a jrmp invoker when use-java-context is true
* [ JBAS-2731 ] JndiLoginInitialContextFactory still extends org.jnp.interfaces.NamingContextFactory
* [ JBAS-3924 ] InvlidationManager$InvlidationGroupImpl produces incorrect log4j DEBGU level setting
* [ JBAS-3198 ] Problems with separated ClassLoaders for EARs and pooled invoker (PooledInvokerHA).
* [ JBAS-3265 ] Problem with empty classname in classloader
* [ JBAS-3268 ] FormAuthenticator has copy/paste error
* [ JBAS-3316 ] outdated log4j.jar causes UndeclaredThrowableException
* [ JBAS-3352 ] Provide better validation of the redelivery parameters on JBossMQ queues and topics
* [ JBAS-3398 ] Non exploded sar containing war cannot undeploy the war file properly
* [ JBAS-3703 ] Update JRMPInvoker to not cast exported object to RemoteStub
* [ JBAS-3721 ] Clustered SSO entries not properly cleaned up if a server crashes
* [ JBAS-3746 ] org.jboss.test.jbossmx.compliance.standard.InfoTortureTestCase.testValidAttribute failure
* [ JBAS-3784 ] derby-jdbc2-service.xml not updated to jboss 4.x
* [ JBAS-3785 ] Syntax Error in derby-jdbc2-service.xml
* [ JBAS-3805 ] Validation problem with jboss-web_4_0.dtd's replication-field-batch-mode element
* [ JBAS-3821 ] Uncatch JMSException in receive() methods in SpyMessageConsumer.java
* [ JBAS-3828 ] spelling mistake in xml tag
* [ JBAS-3833 ] Cannot unregister HAMembershipListener
* [ JBAS-3838 ] ServerInfo does not check response from getThreadInfo for null
* [ JBAS-3840 ] StackTrace appears on stderr when session.processSessionRepl() failed without tx
* [ JBAS-3849 ] Duplicating _$$_javassist_ classes after remote - call - OutOfMemory: PermGen
* [ JBAS-3860 ] XAManagedConnection should implement LocalTransaction to clean up hanging LocalTransaction
* [ JBAS-3861 ] DeploymentFileRepository can be used to write/remove arbitrary files in the filesystem
* [ JBAS-3917 ] The JMS JCA adapter's DLQMaxResent is set by default to 0, causing messages to go straight to DLQ
* [ JBAS-3941 ] JBossCacheService fails in start if context path contains '/'
* [ JBAS-3947 ] JConsole throws exception on connect post JBoss4.0.3SP1
* [ JBAS-3956 ] JACC PolicyContextHandler usage leaks ThreadLocal values
* [ JBAS-3963 ] JBoss AS security test case(CustomSecurityManagerTestCase) failed
* [ JBAS-3964 ] DeployerInterceptorEJB3 depends on jboss.ejb3:service=EJB3Deployer
* [ JBAS-3972 ] incorrect synchronization in JmsServerSessionPool
* [ JBAS-4002 ] JBossWorkManager treats ExecutionContext transaction timeout as milliseconds when it should be seconds are per the API
* [ JBAS-4014 ] timer persistence in afterCompletion
* [ JBAS-4033 ] cache partition index calculation
* [ JBAS-4035 ] BatchReplicationClusteredSessionValve masks exceptions
* [ JBAS-4041 ] jboss_init_redhat.sh is incompatible with a clustered config
* [ JBAS-4048 ] ExternalContext needs to expand its proxy interface collection
* [ JBAS-4056 ] Web Console causes an error when navigating to EJB statistics page (MBeanProxyCreationException)
* [ JBAS-4060 ] NPE in StandardSession.endAccess()
* [ JBAS-4067 ] Collection modifications do not trigger FieldBasedClusteredSession version update
* [ JBAS-4072 ] XAManagedConnectionFactory does not allow for 'is" form of XADataSource properties
* [ JBAS-4075 ] JBossCacheManager.findLocalSessions concurrency issue
* [ JBAS-4090 ] Race condition in Connection.close() can deadlock the JBossMQ's ping thread.
* [ JBAS-4097 ] DummyTransactionManager polluting JNDI in testsuite
* [ JBAS-4114 ] LdapExtLoginModule needs to mask BIND_CREDENTIAL in trace logging
* [ JBAS-4116 ] JRMPInvokerHA fails with a NPE when no JRMPInvoker is setup on the server
* [ JBAS-4118 ] A truly trivial issue; a typo...
* [ JBAS-4121 ] Race condition in JCA Pool Filler
* [ JBAS-4124 ] Using getDefaultSession istead of getSession in org/jboss/resource/adapter/mail/inflow/MailFolder.java
* [ JBAS-4158 ] JACC:WebUserDataPermission creation for unchecked policy should consider excluded constraints
Patch
* [ JBAS-3754 ] ExceptionSorter which marks all exceptions as fatal
Task
* [ JBAS-1853 ] Rename conf/log4j.xml to conf/jboss-log4j.xml to allow log4j.properties override.
* [ JBAS-2617 ] ej3.deployer contains too many jars
* [ JBAS-2823 ] Upgrade commons-logging to v1.1
* [ JBAS-2865 ] Move org.jboss.naming package from server module to naming module
* [ JBAS-3183 ] Integration with WebSphere MQ 5.x
* [ JBAS-3272 ] update JBossRemoting to version 2.0.0
* [ JBAS-3276 ] Exception Sorter Implementations should be validated against current RDBMS documentation.
* [ JBAS-3626 ] Upgrade jbossws to 1.2.0.GA
* [ JBAS-3776 ] Update SerialVersionUIDUnitTestCase to test against new versions
* [ JBAS-3789 ] Update JBossORG-EULA.txt
* [ JBAS-3842 ] Upgrade jboss aop to 1.5.4.SP2
* [ JBAS-3886 ] Upgrade jboss and thirdparty dependencies for JBoss 4.2.0
* [ JBAS-3899 ] Get all testsuites passing
* [ JBAS-3900 ] Get the 4.0-compatibility tests passing
* [ JBAS-3922 ] JBossEntityResolverMgr Mbean example should be included in jboss-4.x\docs\examples
* [ JBAS-3971 ] Add basic classloader leakage tests
* [ JBAS-3974 ] Remove versioned jars
* [ JBAS-4049 ] Consider removing Subject mixin from FIELD granularity session Pojos
* [ JBAS-4050 ] Restore the org.jboss.web.tomcat.tc5.session FIELD granularity marker interfaces
* [ JBAS-4051 ] Support the org.jboss.cache.aop marker interfaces for FIELD granularity pojos
* [ JBAS-4100 ] Introduce v4_2 dtds/schemas
* [ JBAS-4102 ] Remove jbossretro-rt.jar and jboss-backport-concurrent.jar dependencies
* [ JBAS-4104 ] Remove namespace.jar from the build
* [ JBAS-4119 ] Consoles and invokers need to accept local connections only
* [ JBAS-4147 ] Include derby-plugin.jar in docs/examples/varia
* [ JBAS-4149 ] Update Jacc Authorization to consider deployment level roles
* [ JBAS-4159 ] Create the release notes for 4.2.0.CR1
* [ JBAS-4161 ] run.sh/.bat should not complaint when running with a JRE
* [ JBAS-4162 ] run.bat/.sh should allow loading native libraries from bin/native, if it exists
Sub-task
* [ JBAS-2560 ] Replace the MockHAPartition unit test with one that uses a JGroups GossipRouter
* [ JBAS-3612 ] failing org.jboss.test.compatibility.test.SerialVersionUIDUnitTestCase
* [ JBAS-3613 ] failing test in org.jboss.test.iiop.test.ParameterPassingStressTestCase
* [ JBAS-3614 ] failing org.jboss.test.jbossmx.compliance.modelmbean.ModelMBeanTestCase
* [ JBAS-3615 ] failing test in org.jboss.test.jbossmx.compliance.objectname.MalformedTestCase
* [ JBAS-3616 ] failing test org.jboss.test.jmx.test.RMIAdaptorUnitTestCase
* [ JBAS-3617 ] 3 failing tests in org.jboss.test.util.test.PropertyEditorsUnitTestCase
* [ JBAS-3636 ] Port HASingletonElectionPolicy to Branch_4_2
* [ JBAS-3732 ] Remove classloader.equals optimization
* [ JBAS-3863 ] Need to properly test the PooledInvoker for scoped invocations
* [ JBAS-3887 ] Upgrade Javassist to v3.5.0.CR1
* [ JBAS-3888 ] Upgrade to EJB3 RC10
* [ JBAS-3890 ] Upgrade to Hibernate 3.2.1
* [ JBAS-3891 ] Upgrade to JBoss Cache 1.4.1.SP2
* [ JBAS-3892 ] Replace TxManager with JBoss Transactions 4.2.3.CR3
* [ JBAS-3897 ] Switch to JSF1.2 Glassfish implementation
* [ JBAS-3898 ] Switch to embedded JBossWeb 2.0.0.CR1
* [ JBAS-3920 ] Upgrade to JGroups 2.4.1
* [ JBAS-3939 ] Upgrade jbossxb to 1.0.0.CR9
* [ JBAS-3949 ] Upgrade to log4j 1.2.14
* [ JBAS-3950 ] Change ejb2 invoker to be the unified invoker
* [ JBAS-3955 ] Upgrade commons-httpclient to v3.0.1
* [ JBAS-3987 ] failing org.jboss.test.hellojrmpiiop.test.HelloTimingStressTestCase
* [ JBAS-3990 ] failing org.jboss.test.binding.BindingServiceUnitTestCase(binding-manager)
* [ JBAS-3994 ] Upgrade apache digester to v1.7
* [ JBAS-3995 ] org.jboss.test.classloader.test.UnifiedLoaderUnitTestCase
* [ JBAS-3998 ] failing org.jboss.test.classloader.test.ScopingUnitTestCase
* [ JBAS-4008 ] Upgrade jboss-common to 1.0.4.GA
* [ JBAS-4011 ] failing org.jboss.test.tm.test.TxTimeoutUnitTestCase
* [ JBAS-4013 ] Add ability to use multiplexer to ClusterPartition
* [ JBAS-4015 ] failing org.jboss.test.invokers.test.MultiInvokersUnitTestCase
* [ JBAS-4016 ] failing org.jboss.test.jca.test.BaseConnectionManager{Unit|Stress}TestCase
* [ JBAS-4017 ] failing org.jboss.test.jca.test.XAExceptionUnitTestCase
* [ JBAS-4018 ] failing org.jboss.test.jrmp.test.DynLoadingUnitTestCase
* [ JBAS-4019 ] failing org.jboss.test.security.test.SRPUnitTestCase - unlimited crypto support needed
* [ JBAS-4021 ] Distinct system properties for mcast_port in each config file
* [ JBAS-4023 ] failing org.jboss.test.securitymgr.test.WebIntegrationUnitTestCase
* [ JBAS-4024 ] failing org.jboss.test.txiiop.test.IIOPUserTransactionStressTestCase
* [ JBAS-4025 ] failing org.jboss.test.web.test.ssl.SSLUnitTestCase
* [ JBAS-4026 ] failing org.jboss.test.web.test.JSFIntegrationUnitTestCase
* [ JBAS-4031 ] failing org.jboss.test.jacc.test.* tests
* [ JBAS-4058 ] Use the JDK 5 version of JBoss Cache
* [ JBAS-4064 ] failing org.jboss.test.jacc.test.*(JACC+SecurityMgr)
* [ JBAS-4066 ] failing org.jboss.test.classloader.test.CircularityUnitTestCase
* [ JBAS-4073 ] failing org.jboss.test.classloader.leak.test.ClassloaderLeakUnitTestCase
* [ JBAS-4074 ] failing org.jboss.test.jbossmq.test.UIL2JBossMQUnitTestCase
* [ JBAS-4076 ] failing org.jboss.test.jca.test.{Contentious|Recycling|Uncontended}*StressTestCase tests
* [ JBAS-4079 ] failing org.jboss.test.tm.test.Simple*LocalStressTestCase
* [ JBAS-4080 ] failing org.jboss.test.security.test.CustomPrincipalPropagationUnitTestCase
* [ JBAS-4081 ] failing org.jboss.test.security.test.CustomSecurityManagerTestCase(custom-secmgr)
* [ JBAS-4082 ] failing org.jboss.test.naming.test.* tests
* [ JBAS-4085 ] failing org.jboss.test.web.test.WebIntegrationUnitTestCase
* [ JBAS-4126 ] failing org.jboss.test.aop.test tests
* [ JBAS-4136 ] Update XDoclet to an official release
* [ JBAS-4137 ] Update apache-discovery to 0.4
* [ JBAS-4139 ] Update Jaxen to an official release
* [ JBAS-4140 ] Remove sleepycat from thirdpart
* [ JBAS-4141 ] Update apache-slide to v2.1
* [ JBAS-4143 ] remove apache-addressing and apache-wss4j
Documentation and Help
Documentation and help may be obtained from the JBoss site.
* JBoss AS Documentation
* JBoss Wiki
* JBoss JIRA
* JBoss Forums
Licenses
JBoss is licensed under the LGPL, as explained in the JBoss End User License Agreement. The licence texts for JBoss and the thirdparty components it uses may be found in the docs/licenses directory of the distribution. Browse Licences
About JBoss, a division of RedHat
JBoss, a division of RedHat, is in the business of providing superior technical support to our customers. Our goal is to make Professional Open Source? the SAFE CHOICE for you. We accomplish this by backing up our open source Java products with technical support services that are delivered by the core developers themselves. We can help you to train your staff and provide you with support at every stage of the application lifecycle - from development and integration through deployment and maintenance. Visit the JBoss Services page for more information.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4025249#4025249
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4025249
19Â years, 1Â month
[News & Announcements] - JBossCache 2.0.0.BETA1 released
by rrajesh
JBossCache 2.0.0.BETA1 has been released and is available for download on sourceforge at
http://sourceforge.net/project/showfiles.php?group_id=22866&package_id=10...
Release 2.0.0.BETA1 (March 05, 2007)
=========================
Changes:
Release Notes for JBoss Cache Habanero 2.0.0
** Sub-task
* [ JBCACHE-542 ] Fix initialization of Node.IdentityLock to actually lazy create
* [ JBCACHE-543 ] Consider synchronized(this) instead of a separate lock
* [ JBCACHE-545 ] Consider removing TreeCache, parent, and name
* [ JBCACHE-546 ] Move lock related operations to a separate utility, such as NodeLock
* [ JBCACHE-547 ] Remove TreeNode and DataNode interfaces
* [ JBCACHE-831 ] Port multiplexer integration unit tests to HEAD
* [ JBCACHE-914 ] Adapt JBCACHE-913 fix for JBC 2.0
* [ JBCACHE-958 ] Add unit tests of JBCACHE-955
** Feature Request
* [ JBCACHE-9 ] Streaming state transfer, for large states
* [ JBCACHE-57 ] Interfaces for accessing JBossCache
* [ JBCACHE-541 ] Create one true Node class; that's lean and mean and stuff
* [ JBCACHE-629 ] SELECT FOR UPDATE semantics
* [ JBCACHE-735 ] Append the cluster name to the TreeCache log category
* [ JBCACHE-802 ] NonManagedConnectionFactory does not place new connections in ThreadLocal (JDBCCacheLoader)
* [ JBCACHE-834 ] Combine eviction RegionManager with generic RegionManager
* [ JBCACHE-869 ] Use Marshaller for all forms of serialization, not just replication.
* [ JBCACHE-880 ] Add expiration policy for nodes based on a node's expiration key
* [ JBCACHE-908 ] Marshalling for state transfer should go thru the VersionAwareMarshaller fwk
* [ JBCACHE-918 ] Investigate Serializable interfaces for classes that are not streamed.
* [ JBCACHE-921 ] Eviction should eventually clean up nodes that are cleared but not removed
* [ JBCACHE-955 ] Restore ability to insert and remove child nodes with only a read lock on the parent
* [ JBCACHE-962 ] optimisticValidation unnecessarily checks DataVersion types during simpleValidate() - should delegate this to the DataVersion impl
* [ JBCACHE-969 ] Move transaction classes to org.jboss.cache.transaction
** Bug
* [ JBCACHE-565 ] Optimistic locking - cache.exists() refers to the tree while cache.get() refers to the workspace
* [ JBCACHE-693 ] TreeCache configuration bombs with InvocationTargetException when JVM locale is set to Turkish.
* [ JBCACHE-740 ] Optimistic Locking Scheme: Occasional IllegalStateExceptions on commit
* [ JBCACHE-858 ] Investigate POJOCACHE failures
* [ JBCACHE-859 ] Known failures in 2.0.0.Alpha1 need cleaning up
* [ JBCACHE-861 ] JDBC tests failing on the packaged distribution
* [ JBCACHE-862 ] PojoCache tutorial broken
* [ JBCACHE-863 ] Plain Cache tutorial broken
* [ JBCACHE-864 ] PojoCache loadtime example broken
* [ JBCACHE-865 ] PojoCache passivation example broken
* [ JBCACHE-866 ] PojoCache sensor example broken
* [ JBCACHE-872 ] Lock release methods should produce similar log messages to lock acquire methods
* [ JBCACHE-885 ] Bug when calling putObject() with array as argument
* [ JBCACHE-904 ] PojoCache Collection list returns wrong size if using optimistic locking
* [ JBCACHE-923 ] Acquired node lock never released after transaction timeout
* [ JBCACHE-926 ] PojoCache local concurrent test produced lock timeout exception
* [ JBCACHE-927 ] Repeated remove and put under optimistic locking produces exception
* [ JBCACHE-929 ] MRU eviction algorithm test failures
* [ JBCACHE-935 ] Data gravitation throws ArrayIndexOutOfBoundException with FLUSH based stack
* [ JBCACHE-936 ] Replication of user defined Collections translate to standard Collections in target node
* [ JBCACHE-940 ] Creating a child with explicit data version under a parent also with an explicit data version causes the parent to be added with DefaultDataVersion
* [ JBCACHE-945 ] Post-activation nodeActivated notification sent before node added to tree
* [ JBCACHE-951 ] IdentityLock logs at too high a level
* [ JBCACHE-963 ] Eviction thread timer is not a daemon
** Task
* [ JBCACHE-156 ] Refactor the docs directory
* [ JBCACHE-593 ] JBoss Cache features for JBoss AS 5.0
* [ JBCACHE-595 ] Merge API interfaces
* [ JBCACHE-664 ] Add JBossRetro jars, baseline to Java5 and create a Java1.4 compat binary
* [ JBCACHE-752 ] Look into using JBC Marshaller implementations for responses as well as requests
* [ JBCACHE-787 ] Documentation: Add a chapter on extending JBoss Cache
* [ JBCACHE-852 ] PojoCache implementation class AOP instrumentation is version dependent
* [ JBCACHE-867 ] Refactor use of TreeCacheProxyImpl
* [ JBCACHE-868 ] Renamed PojoCache annotation
* [ JBCACHE-870 ] Make Marshallers pluggable
* [ JBCACHE-874 ] Use performant ordered collections in TransactionEntry
* [ JBCACHE-884 ] Upgrade to JGroups 2.4.1
* [ JBCACHE-888 ] Remove TreeCache.UNITIALIZED, add NodeSPI.get/setDataLoaded()
* [ JBCACHE-889 ] EvictionPolicy methods for 2.0, consider revising
* [ JBCACHE-919 ] PojoCache to optimize access to __JBossInternal__ region
* [ JBCACHE-920 ] Port multiplexer integration unit tests to HEAD
* [ JBCACHE-922 ] Merge src-50 into src
* [ JBCACHE-924 ] PojoCache to re-throw Cache exception
* [ JBCACHE-930 ] Better encapsulation: make CacheImpl, VersionedNode and UnversionedNode constructors protected, move CacheFactory and NodeFactory to o.j.cache package.
* [ JBCACHE-939 ] Improve the quality of JavaDoc for JBossCache
* [ JBCACHE-952 ] Replace calls to Throwable.printStackTace with logging
* [ JBCACHE-954 ] FileCacheLoader to use VersionAwareMarshaller
* [ JBCACHE-959 ] Change logging level if no TransactionManagerLookupClass is configured
* [ JBCACHE-960 ] Reduce logging when TxInterceptor catches exception
** Patch
* [ JBCACHE-891 ] Patch to use Java 1.5 concurrent lock classes
* [ JBCACHE-948 ] Patch to add return value (boolean) to removeChild*() and removeNode*() methods
OLDER RELEASES
==============
* For releases prior to 2.0.0, see http://jira.jboss.com/jira/browse/JBCACHE
* For releases prior to 1.2.1, see http://viewvc.jboss.org/cgi-bin/viewvc.cgi/jboss/JBossCache/docs/Changelo...
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4025248#4025248
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4025248
19Â years, 1Â month
[JBoss Seam] - Re: Combining list and all CRUD functionality on a single pa
by tony.herstellï¼ gmail.com
I think what you want is to hack the conversation string...
See my CRUD pages below..
cRUDOrganisationController.mode
is visible in the conversation state which is either CREATE, READ, UPDATE, DELETE
| public interface CRUDOrganisationController {
|
| public enum Mode {CREATE, READ, UPDATE, DELETE};
|
| public Mode getMode();
|
| public boolean getModeIsRead();
|
| public boolean getModeIsCreate();
|
| public boolean getModeIsUpdate();
|
| public boolean getModeIsDelete();
|
| public String startCreate();
|
| public String startRead(Organisation organisation);
|
| public String startUpdate(Organisation organisation);
|
| public String startDelete(Organisation organisation);
|
| public String checkDetails();
|
| public String revise();
|
| public String create();
|
| public String update();
|
| public String delete();
|
| public String switchToUpdate();
|
| public String switchToDelete();
|
| public String cancelCRUD();
|
| public String cancelConfirm();
|
| public void destroy();
| }
|
|
|
| <pages no-conversation-view-id="/mainmenu.xhtml">
| <page view-id="/userCRUD.xhtml" timeout="300000">
| Reason: #{cRUDUserController.mode} User ( #{user.username} )
| </page>
| <page view-id="/userConfirm.xhtml" timeout="300000">
| Reason: Confirm #{cRUDUserController.mode} User
| (#{user.username} )
| </page>
| <page view-id="/userRegistration.xhtml" timeout="300000">
| Reason: Registration of new User
| </page>
|
| <page view-id="/organisationCRUD.xhtml" timeout="300000">
| Reason: #{cRUDOrganisationController.mode} Organisation (
| #{organisation.name} )
| </page>
| <page view-id="/organisationConfirm.xhtml" timeout="300000">
| Reason: Confirm #{cRUDOrganisationController.mode} Organisation
| (#{organisation.name} )
| </page>
|
| <page view-id="/upload.xhtml" timeout="300000">
| Reason: Upload Image
| </page>
|
| <!-- Security -->
|
| <page view-id="/userRegistration.xhtml">
| <restrict>#{!identity.loggedIn}</restrict>
| </page>
|
| <page view-id="/userFind.xhtml">
| <restrict>#{identity.loggedIn}</restrict>
| </page>
| <page view-id="/userCRUD.xhtml">
| <restrict>#{identity.loggedIn}</restrict>
| </page>
| <page view-id="/userConfirm.xhtml">
| <restrict>#{identity.loggedIn}</restrict>
| </page>
|
| <page view-id="/organisationFind.xhtml">
| <restrict>#{identity.loggedIn}</restrict>
| </page>
| <page view-id="/organisationCRUD.xhtml">
| <restrict>#{identity.loggedIn}</restrict>
| </page>
| <page view-id="/organisationConfirm.xhtml">
| <restrict>#{identity.loggedIn}</restrict>
| </page>
|
| <page view-id="/upload.xhtml">
| <restrict>#{identity.loggedIn}</restrict>
| </page>
|
| <exception class="org.jboss.seam.security.NotLoggedInException">
| <end-conversation />
| <redirect view-id="/securityError.xhtml">
| <message>#{messages.security_not_logged_in}</message>
| </redirect>
| </exception>
|
| <exception class="org.jboss.seam.security.AuthorizationException">
| <end-conversation />
| <redirect view-id="/securityError.xhtml">
| <message>#{messages.security_permission}</message>
| </redirect>
| </exception>
|
| </pages>
|
|
|
Someone will have a better solution I am sure...
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4025245#4025245
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4025245
19Â years, 1Â month
[JBoss Seam] - Re: Exadel, JBoss and Seam
by tony.herstellï¼ gmail.com
Please tell us what to add, where, to get RichFaces to work with Seam.
With IceFaces it was a case of just dropping jars into EAR and updating the META-INF/application.xml
| <!-- Icefaces -->
| <module>
| <java>icefaces.jar</java>
| </module>
|
| <module>
| <java>icefaces-comps.jar</java>
| </module>
|
| <module>
| <java>el-api.jar</java>
| </module>
|
| <module>
| <java>el-ri.jar</java>
| </module>
|
| <module>
| <java>icefaces-facelets.jar</java>
| </module>
|
| <module>
| <java>commons-fileupload.jar</java>
| </module>
|
Referencing the above jars into the War (as remote jars)
| icefaces.jar, icefaces-comps.jar and icefaces-facelets.jar
|
Lobbing in the icefaces-component.tld in the WEB-INF (for some reason I haven't fathomed yet)
Referencing icefaces in the .xhtml pages
| xmlns:ice="http://www.icesoft.com/icefaces/component"
|
Adding the backing bean support
| /*
| * GUI Support methods
| */
|
| public String applyFilter() {
| log.info("> applyFilter");
| /*
| * Set the model to to the results returned from the constraints
| */
| log.info("Finding all the required organisations returned from the constraints" + organisation);
| applyQueryBasedOnSearchCriteria();
| log.info("< applyFilter");
| return null;
| }
|
| /**
| * The panel stack is controlled by a group of radio buttons and their state
| * changes call this method to register the newly selected panel.
| *
| * @param event
| * new value of event contains the new selected panel name.
| */
| public void selectedSearchCriteriaPanelChanged(ValueChangeEvent event) {
| log.info("> selectedSearchCriteriaPanelChanged");
| log.info("applyingSearchCriteriaChange (All/Filtered)");
| if (event.getNewValue() != null) {
| selectedSearchCriteriaPanel = event.getNewValue().toString();
| log.info(selectedSearchCriteriaPanel + " selected");
| if (selectedSearchCriteriaPanel.equals(ALL_OPTION)) {
| applyAllQuery();
| } else {
| applyQueryBasedOnSearchCriteria();
| }
| } else {
| log.info("null new event passed in. Error!");
| }
| log.info("< selectedSearchCriteriaPanelChanged");
| }
|
|
| private void sort() {
| Comparator organisationComparator = new Comparator() {
|
| public int compare(Object o1, Object o2) {
| Organisation organisation1 = (Organisation)o1;
| Organisation organisation2 = (Organisation)o2;
|
| if (sortColumn == null) {
| return 0;
| }
|
| if (sortColumn.equals(messages.get("column_title_name"))) {
| // Surname
| if (!ascending) {
| return (organisation1.getName().compareTo(organisation2.getName()));
| } else {
| return (organisation2.getName().compareTo(organisation1.getName()));
| }
| } else if (sortColumn.equals(messages.get("column_title_physical"))) {
| // Firstname
| if (ascending) {
| if (organisation1.getPhysical() == true && organisation2.getPhysical() == false) {
| return 1;
| } else if (organisation1.getPhysical() == organisation2.getPhysical()) {
| return 0;
| } else if (organisation1.getPhysical() == false && organisation2.getPhysical() == true) {
| return -1;
| }
| } else {
| if (organisation2.getPhysical() == true && organisation1.getPhysical() == false) {
| return 1;
| } else if (organisation2.getPhysical() == organisation1.getPhysical()) {
| return 0;
| } else if (organisation2.getPhysical() == false && organisation1.getPhysical() == true) {
| return -1;
| }
| }
| } else if (sortColumn.equals(messages.get("column_title_creation_date"))) {
| // Creation Date
| if (ascending) {
| return (organisation1.getDates().getCreationDate().compareTo(organisation2.getDates().getCreationDate()));
| } else {
| return (organisation2.getDates().getCreationDate().compareTo(organisation1.getDates().getCreationDate()));
| }
| }
| return 0;
| }
| };
|
| if (organisations != null) {
| Arrays.sort(organisations, organisationComparator);
| }
| }
|
|
Some "intersting" xml in web.xml page.
| <context-param>
| <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
| <param-value>client</param-value>
| </context-param>
|
| <context-param>
| <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
| <param-value>.xhtml</param-value>
| </context-param>
|
| <context-param>
| <param-name>facelets.DEVELOPMENT</param-name>
| <param-value>true</param-value>
| </context-param>
|
| <context-param>
| <param-name>com.icesoft.faces.actionURLSuffix</param-name>
| <param-value>.seam</param-value>
| </context-param>
|
| <context-param>
| <param-name>com.icesoft.faces.synchronousUpdate</param-name>
| <param-value>true</param-value>
| </context-param>
|
| <servlet>
| <servlet-name>Faces Servlet</servlet-name>
| <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
| <load-on-startup>1</load-on-startup>
| </servlet>
|
| <!-- Added as trail from http://support.icesoft.com/jive/servlet/KbServlet/download/623-102-847/Se...
| <context-param>
| <param-name>com.icesoft.faces.doJSFStateManagement</param-name>
| <param-value>true</param-value>
| </context-param>
| -->
|
| <!-- Faces Servlet Mapping -->
| <!--
| <servlet-mapping>
| <servlet-name>Faces Servlet</servlet-name>
| <url-pattern>*.seam</url-pattern>
| </servlet-mapping>
|
| -->
|
| <servlet>
| <servlet-name>Blocking Servlet</servlet-name>
| <servlet-class>com.icesoft.faces.webapp.xmlhttp.BlockingServlet</servlet-class>
| <load-on-startup> 1 </load-on-startup>
| </servlet>
|
| <servlet>
| <servlet-name>Persistent Faces Servlet</servlet-name>
| <servlet-class>com.icesoft.faces.webapp.xmlhttp.PersistentFacesServlet</servlet-class>
| <load-on-startup>1</load-on-startup>
| </servlet>
|
| <servlet-mapping>
| <servlet-name>Persistent Faces Servlet</servlet-name>
| <url-pattern>/xmlhttp/*</url-pattern>
| </servlet-mapping>
|
| <servlet-mapping>
| <servlet-name>Persistent Faces Servlet</servlet-name>
| <url-pattern>/xmlhttp/*</url-pattern>
| </servlet-mapping>
|
| <servlet-mapping>
| <servlet-name>Persistent Faces Servlet</servlet-name>
| <url-pattern>*.iface</url-pattern>
| </servlet-mapping>
|
| <!-- file upload Servlet -->
| <servlet>
| <servlet-name>uploadServlet</servlet-name>
| <servlet-class>com.icesoft.faces.component.inputfile.FileUploadServlet</servlet-class>
| <load-on-startup> 1 </load-on-startup>
| </servlet>
|
| <servlet-mapping>
| <servlet-name>uploadServlet</servlet-name>
| <url-pattern>/uploadHtml</url-pattern>
| </servlet-mapping>
|
Just a short post should give me a starting point.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4025244#4025244
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4025244
19Â years, 1Â month
[JBoss Portal] - Re: invalidate cache / user per user and window per window
by Antoine_h
Hello,
I have done it without using the jboss cache.
I use only a "signal", that is a parameter in the underlying HttpServletRequest.
I wonder if it is a proper way. (clean, surely not, but working ok ?).
If anyone can confirm it is ok ?
if so, I'll write a wiki about this, with the helper class and test portlets I made for this feature.
In the process action of the portlet that want to invalidate the cache of all portlet, I set a render parameter.
resp.setRenderParameter(CACHE_SIGNAL_RENDER_PARAM_NAME,
| CACHE_SIGNAL_RENDER_PARAM_VALUE);
|
In the ConsumerCacheInterceptor :
- I get the invocation.getContext() and try to cast this context to an AbstractInvocationContext
- if this cast is ok, I get the HttpServletRequest client request from it
HttpServletRequest httpServletRequest = abstractInvCtxt.getClientRequest();
|
- from this HttpServletRequest, I get the parameter
httpServletRequest.getParameter(CACHE_SIGNAL_RENDER_PARAM_NAME);
If the value of the parameter says to invalidate the cache, I do so.
The parameter is seen in the ConsumerCacheInterceptor for all the windows/portlet of the page... which is great for this feature, but seems strange.
The parameter was set for only one portlet, in its processAction method...
I have made some detailed tests, and it works fine.
anybody can confirm this is ok ? Julien ?
Thanks.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4025241#4025241
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4025241
19Â years, 1Â month