Table of Contents
List of Tables
To ensure that the Fuse MQ Enterprise container is automatically secure after you install it, the default security settings have changed in version 7.0.2. By default in Fuse MQ Enterprise 7.0.2, none of the container's services are remotely accessible.
The following ports and services are affected by this security change:
SSH console port (remote administration).
JMX port.
Apache ActiveMQ JMS broker.
Apache ActiveMQ Web console.
If you deploy any routes that connect to the internal Apache ActiveMQ broker, you must change the configuration of the ConnectionFactory so that it is defined with a username and a password. This is necessary, because the Apache ActiveMQ broker is now secure by default.
For example, in Spring XML you could configure the Camel ActiveMQ component as follows:
<beans ... >
...
<bean id="activemq"
class="org.apache.activemq.camel.component.ActiveMQComponent">
<property name="brokerURL" value="tcp://localhost:61616"/>
<property name="userName" value="Username"/>
<property name="password" value="Password"/>
</bean>
...
</beans>Where the and
Username are the credentials of a JAAS user with
Passwordadmin privileges.
![]() | Note |
|---|---|
If you want to revert to using an insecure broker (similar to versions prior to 7.0.2), see Disabling Broker Security in Managing and Monitoring a Broker for instructions on how to disable JAAS authentication in the broker. |
When migrating your applications to a fresh installation of a Fuse MQ Enterprise 7.0.2 container, you should perform the following steps to configure security on the container:
Configure JAAS security in the
file to have
at least one user entry with InstallDir/etc/users.propertiesadmin privileges . Each user entry is defined
on its own line and has the following format:
Username=Password,admin
Where the admin role gives this user the privileges to access all
administration and management functions of the container.
Edit the
file and modify the InstallDir/etc/system.propertieswebconsole.jmx.* and webconsole.jms.*
properties as follows:
webconsole.jmx.user=Usernamewebconsole.jmx.password=Passwordwebconsole.jms.user=Usernamewebconsole.jms.password=Password
Where the and
Username are the credentials of a JAAS user
with Passwordadmin privileges.
For more details about these security changes, see Security Basics in Managing and Monitoring a Broker.
The following general features were added:
Fuse MQ Enterprise supports Java 7 and Java 6. The runtime is compiled against JDK 1.6 and is verified against JDK 1.7.
The new features were added to the messaging layer:
The Stomp-over-WebSocket protocol (ws: URL) supports a secure variant
(wss: URL), which takes its SSL/TLS configuration from the
sslContext configuration element.
With broker redelivery the redelivery logic is implemented on the broker. This has the advantage that messages can be redelivered even after a specific consumer has died, but has the disadvantage that message order cannot be guaranteed.
Broker redelivery can be enabled by installing the redeliveryPlugin
on the broker.
Message store locking has been refactored so that the locking logic is independent of the particular store implementation. The new architecture allows you to use any kind of locker with any kind of store database. Three locker types are currently provided:
shared file locker
database locker
lease database locker
The lease database locker is a new locker implementation that is recommended as a replacement for the default database locker. With the default database locker, it could happen that the master broker crashes without releasing the lock, so that the slave remains permanently locked out and is unable to take over from the master. This problem is solved in the lease database locker, because the master acquires only a temporary lease on the lock and must regularly renew the lease. If the master crashes, the slave can acquire the lock as soon as the lease times out.
It is now possible to associate redelivery policies with specific destinations, by defining a redelivery map that associates a redelivery policy with each named destination (where the name can include wildcards).
Fuse MQ Enterprise supports the new LevelDB store, which uses Google's LevelDB library to maintain the indexes into the log files.
Fuse MQ Enterprise now supports the MQTT (MQ Telemetry Transport) transport. There are three variations of the MQTT transport:
plain MQTT (mqtt: URL)
MQTT+NIO (mqtt+nio: URL)
MQTT+NIO+SSL (mqtt+nio+ssl: URL)
Fuse MQ Enterprise now supports an LDAP authorization plug-in. You can configure the LDAP
authorization plug-in by adding the cachedLDAPAuthorizationMap
element as a child of authorizationPlugin/map.
Fuse MQ Enterprise now supports Stomp 1.1.
Fuse MQ Enterprise now supports the Stomp+NIO+SSL protocol combination
(stomp+nio+ssl: URL).
Fuse MQ Enterprise now supports using MS SQL JDBC driver 4.0 with the JDBC persistence adapter.
The following issues are known to exist in 7.1:
The installer suggests a default user of fuse to be used when installing the product.
Red Hat Enterprise Linux already has a fuse system user. Thus, you cannot use the suggested
default when installing on Red Hat Enterprise Linux.
AIX has an eight character limit for user and group names. The installer default
for the group name, fusesource is too long. Accepting this on
AIX will fail with an error of unable to create user/group. Using a shorter group
name addresses resolves this issue.
Fuse MQ Enterprise's console is normally launched using the fusemq command which is fully functional. However, Fuse MQ Enterprise also includes a generic Apache Karaf shell that can be launched using the shell command. In the generic shell, the help command throws an exception.
We do not recommend using the generic Apache Karaf shell.
The ls console command, which is used for inspecting OSGi bundles, will throw an exception when listing the contents of some bundles.
On certain 64bit Windows platforms you need Microsoft Visual C++ 2008 Redistributable Package (x64) installed or Fuse MQ Enterprise will not start.
Table 4.1 lists the issues resolved between 7.0.2 and 7.1.
Table 4.1. Messaging Issues Resolved in 7.1
| Issue | Description |
|---|---|
| ENTMQ-11 | Remove activemq:create-broker command |
| ENTMQ-60 | /bin/stop fails to stop Fuse MQ Enterprise if it's trying to become a master |
| ENTMQ-69 | Broker configuration persistent="false" ignored when message says it should be persistent |
| ENTMQ-79 | mq-create --create-container tries to create child using wrong parent container |
| ENTMQ-90 | Installing Fuse MQ Enterprise as a service using the command line installer does not work |
| ENTMQ-94 | activemq and mq webconsole listed in the features |
| ENTMQ-107 | Incorrect transaction feature version range |
| ENTMQ-108 | Need to upgrade the xbean version |
| ENTMQ-115 | org.apache.kahadb.index.BTreeIndexTest.testRandomAddRemove fails on AIX |
| ENTMQ-116 | Provide xsd with the distribution in the Maven repository |
| ENTMQ-120 | mq-web-console - 500 and 404 handling needs re-branding |
| ENTMQ-121 | mq-web-console - schedualler and slave .jsp show strange behavior when hovering on Support link |
| ENTMQ-122 | Can't log into mq web console |
| ENTMQ-123 | CNFE when sending message through web console |
| ENTMQ-124 | Regression to durable subscriptions that use pendingDurableSubscriberPolicy |
| ENTMQ-130 | The mq-base profile does not provide security out-of-the-box |
| ENTMQ-131 | Creating a broker with the mq profile fails |
| ENTMQ-132 | Exception occurs trying to access the web console |
| ENTMQ-134 | mq-create is not working with security introduced |
| ENTMQ-135 | webconsole - exception when selecting Topic Views |
| ENTMQ-136 | Typo in command in readme |
| ENTMQ-137 | Fabric discovery agent cannot connect to secured zookeeper |
| ENTMQ-139 | Authenticated mq-web-console user with invalid activemq.jmx.user credentials error page XML view is problematic |
| ENTMQ-148 | NullPointerException when using mq-create to create master-slave brokers |
| ENTMQ-152 | etc/*-mq.properties included in error |
| ENTMQ-153 | Typo in readme.txt |
| ENTMQ-154 | fabric:create and mq profile - issues at startup - cce and mbean exists |
| AMQ-1132 | activeio test package inclusion and logging properties |
| AMQ-1706 | Out of date javadoc for org.apache.activemq.ActiveMQConnectionFactory.setDispatchAsync @param, the default value is true on trunk |
| AMQ-1719 | Resource adapter stops consuming messages after broker is forcefully stopped/restarted during XA transaction |
| AMQ-1885 | The JDBC lockKeepAlive thread should be started only if current broker instance successfully started and became a master |
| AMQ-1899 | Sending without entering a queue name creates an empty queue with a message in it |
| AMQ-1902 | org.apache.activemq.broker.region.cursors.CursorQueueStoreTest often fails |
| AMQ-2200 | TopicSubscriptionView returns -1 for SessionId and MaxPendingQueueSize |
| AMQ-2240 | Please add validation of unknown or invalid URI parameters for Camel ActiveMQComponent |
| AMQ-2430 | Embedded RESTful fileserver does not close files when PUT method is called |
| AMQ-2453 | start/control-script is not suitable for professional environments |
| AMQ-2502 | activemq-camel is missing an optional Import-Package for org.apache.activemq.pool |
| AMQ-2524 | Messages are lost and no exception raised when queue is deleted and created by another process |
| AMQ-2528 | org.apache.activemq.broker.region.Queue#removeMatchingMessages(String selector) does not allow an empty string as a selector, but empty string is a valid JMS message selector |
| AMQ-2584 | Massege store is not cleaned when durable topic subscribers are refusing messages |
| AMQ-2656 | ActiveMQInitialConnectionFactory cannot return an XAConnectionFactory |
| AMQ-2665 | Durable subscription re-activation failed when keepDurableSubsActive=true |
| AMQ-2730 | Transport failed: java.io.EOFException |
| AMQ-2801 | On start-up, durable subscriber ignores Selectors when calculating pending queue size |
| AMQ-3004 | Build-up of unwanted messages |
| AMQ-3012 | HttpTunnelServlet incorrectly swallows exceptions during transport creation |
| AMQ-3014 | DemandForwardingBridgeSupport can send BrokerInfo to remote transport before local broker ID is known |
| AMQ-3023 | DestinationView.browseMessages(String) must not call OpenTypeSupport.convert() |
| AMQ-3031 | Time synchronization solution |
| AMQ-3157 | Garbage collecting inactive destinations does not work with queue mirroring |
| AMQ-3168 | In the broker XSD, boolean attributes should permit value injection via Srping's PropertyPlaceholderConfigurer |
| AMQ-3214 | "InactivityMonitor Async Task" threads leaking |
| AMQ-3274 | Duplicate messages on temporary topics in network of brokers |
| AMQ-3285 | ActiveMQXAConnectionFactory does not respect various parameters for redelivery policy |
| AMQ-3292 | KahaDb Transaction iterator remove doesn't throw Runtime Exception |
| AMQ-3301 | LockFile in-jvm check is not thread-safe |
| AMQ-3319 | A possible browsing concurrency issue in org.apache.activemq.broker.region.Queue |
| AMQ-3324 | ActiveMQ.Advisory.xxxxxx.TempQueue.xxx, AMQ.A.xxx.Queue.xxx and AMQ.A.xxx.Topic.xxx Topics don't get removed when the originating tempQueue, Queue or Topic is removed |
| AMQ-3342 | Shutdown of broker waiting for shared fileystem lock blocks |
| AMQ-3359 | UDP Transport connector listens on a random port number |
| AMQ-3405 | DLQ messages moved/copied into original queue disappear after failing processing for a second time |
| AMQ-3414 | InactiviryMonitor Async Task thread overflow when date changes |
| AMQ-3426 | AbstractRegion.java has incorrect null check in constructor |
| AMQ-3427 | Activemq-trunk does not compile with JDK7 |
| AMQ-3434 | Contention in PLIist creation results in NPE on load - FilePendingMessageCursor |
| AMQ-3443 | checkpoint contention with large transaction write using temp file |
| AMQ-3445 | jdbcPersistenceAdapter will lose existing queues after a broker restart |
| AMQ-3455 | Broker may deadlock when creating queues under load with wildcard consumers |
| AMQ-3463 | Sync pom and osgi metadata |
| AMQ-3466 | IndexOutOfBounds in kahadb with large number of subscriptions and pending messages |
| AMQ-3470 | Unable to pick up messages anymore, messages are lost - Looking for key xyz but not found in fileMap |
| AMQ-3488 | Temporary destinations' DestinationInfo commands over VM transport prevent connection closure |
| AMQ-3490 | NullPointerException during message processing, using FileCursor |
| AMQ-3501 | Stomp v1.1 support, headers, eg: message-id, are not properly escaped |
| AMQ-3506 | Access to ConnectionPool.createSession needs to be synchronized |
| AMQ-3513 | initialReconnectDelay is ignored for Failover transport |
| AMQ-3514 | MessageListenerServlet does not clear the timer on destroy |
| AMQ-3516 | Failover Transport MessageAck commands aren't filtered in oneway |
| AMQ-3517 | Failover transport will never call transportResumed when it reconnects to a hot backup transport |
| AMQ-3518 | MessageServletSupport request body does not check the content-type in an intelligent way |
| AMQ-3537 | ClassLoadingAwareObjectInputStream cannot handle de-serializing proxies with mixed JDK & non-JDK interfaces |
| AMQ-3543 | STOMP connector: unexpected reply-to value for remote temporary topic |
| AMQ-3547 | Calling Connection.close() on interrupted thread generates InterruptedIOException and leaks Connection |
| AMQ-3556 | HTTP transport not playing nice with compression and sending TextMessage |
| AMQ-3568 | Consumer auto acking of duplicate message dispatch can lead to Unmatched acknowledge: and redelivery |
| AMQ-3576 | ProducerBrokerExchange last producer sequenceId initialization needs runtime updates to deal with possible duplicate resends |
| AMQ-3581 | Web Console: escape link urls |
| AMQ-3590 | activemq-web REST servlet support for JMSType is broken due to a typo |
| AMQ-3599 | JaasDualAuthenticationPlugin, java.net.BindException: Address already in use on shutdown with pending connections |
| AMQ-3600 | Failover reconnect bypasses DestinationPathSeparatorBroker generating invalid destinations |
| AMQ-3601 | When using HTTP transport XStream cannot construct org.apache.activemq.util.ByteSequence as it does not have a no-args constructor |
| AMQ-3606 | Features descriptor should define the namespace |
| AMQ-3607 | Setting OptimiseAcknowledge on a queue with a prefetch limit causes normal/fast consumers to miss messages when a slow consumer is blocking |
| AMQ-3618 | When using Openwire with cacheEnabled=false memory is wasted on unmarshallCache[] and marshallCache[] |
| AMQ-3628 | AMQ3567Test doesn't clean up appender after AMQ-3623 update |
| AMQ-3635 | JmsTopicConnector checks for presence of localClientId then uses outboundClientId |
| AMQ-3649 | NullPointerException when KahaDB fails to store to journal with EOFException |
| AMQ-3651 | If the broker binds RMI registry port when it starts up, the broker should release RMI registry port when it shuts down |
| AMQ-3653 | content-length header should be considered only for SEND frames |
| AMQ-3664 | Not all messages will be acknowledged when optimizeAcknowledge is true |
| AMQ-3665 | Velocity's IntroSpectionCache causes OutOfMemoryError on large AMQ stores when running activem-admin journal-audit |
| AMQ-3673 | Unexpected behavior in failover transport when hosts are unknown |
| AMQ-3674 | TopicRegion removes durableScriber from durableSubscriptions when it is active; but leaves subscription on topic |
| AMQ-3675 | Removing a DurableTopicSubscription leaves subscription in active subscriptions map |
| AMQ-3678 | Active durable topic consumer is not re-assigned to topic after it is deleted and recreated |
| AMQ-3679 | Bad OSGi metadata for activeio-core introduced with fix for AMQ-3461 |
| AMQ-3680 | Cleanup of temporary destinations by PooledConnection and ConnectionPool either leaks temp dests or deletes too many |
| AMQ-3681 | DatabaseLocker should first cancel locking SQL statement before closing the SQL connection |
| AMQ-3684 | Potential deadlock in vm transport setListener when sender is blocked pending space |
| AMQ-3709 | Patch to fix invalid XHTML in web-console's 404 and 500 pages |
| AMQ-3719 | Tracked command IOException causes failover transport to hang until failure occurs for untracked command |
| AMQ-3727 | activemq-web-console: AjaxServlet not working in OSGi container |
| AMQ-3735 | Java service wrapper ${activemq.conf} not found |
| AMQ-3737 | Possible leak in ManangedRegionBroker unregisterDestination |
| AMQ-3743 | activemq-web-console WAR with SNAPSHOT dependencies breaks osgi Bundle-ClassPath in manifest |
| AMQ-3753 | Exception on stopping the broker - Timer already cancelled |
| AMQ-3782 | Failover transport throws NullPointerException |
| AMQ-3785 | ActiveMQSslConnectionFactory does not detect SSL request in failover URIs when creating transports |
| AMQ-3791 | Flexibility, concurrency, security, and compatibility issues in CachedLDAPAuthorizationMap |
| AMQ-3797 | org.apache.activemq.util.StringArrayEditor causes classloader leaks |
| AMQ-3802 | Successful unsubscribing should not report inactive durable topic subscribers |
| AMQ-3803 | ActiveMQWASInitialContextFactory throws ClassCastException in WebSphere 8 |
| AMQ-3804 | NullPointerException logged every 30 seconds while attempting to clear expired messages |
| AMQ-3807 | MBeans are not unregistered under WebSphere |
| AMQ-3812 | activemq-core won't deploy in Karaf, missing fusesource imports |
| AMQ-3817 | Marshalled properties don't get updated if modified during preProcessDispatch |
| AMQ-3819 | High CPU usage with stomp+nio+ssl and many subscriptions |
| AMQ-3828 | URISupport incorrectly handles parenthesis |
| AMQ-3831 | Exit code is not properly returned when using RUN_AS_USER |
| AMQ-3835 | Stomp 1.0 protocol read ACK broken on ActiveMQ 5.6.0 |
| AMQ-3836 | Stomp 1.0 protocol SUBSCRIBE destination broken on ActiveMQ 5.6 |
| AMQ-3841 | mKahaDB causes ArrayIndexOutOfBoundsException on restart after deleting existing queues |
| AMQ-3842 | Test units should run discovery mechanism via loopback device |
| AMQ-3845 | CachedLDAPAuthorizationMap doesn't handle the ldap connection dying |
| AMQ-3849 | Typos in protobuf specs + generated Java code for KahaDB |
| AMQ-3852 | Stomp transport allows durable topic subscriber to subscribe to a queue |
| AMQ-3853 | Missing import in activemq-web-console |
| AMQ-3854 | Referencing old Spring XSD in configuration files |
| AMQ-3855 | MQTT doesn't translate wildcards to ActiveMQ wildcards |
| AMQ-3856 | MessageServlet assumes TextMessages contain Text |
| AMQ-3857 | MessageServlet GET messages do not return JMS message Properties |
| AMQ-3858 | Failure to resolve local JMX URL for sunJvm can result in NullPointerException |
| AMQ-3863 | XA session is returned twice to the pool |
| AMQ-3865 | AjaxTest fails all tests due to line ending differences |
| AMQ-3867 | Unable to delete messages whose original destination is virtual topic from Web console |
| AMQ-3879 | Temporary queues may be deleted by the wrong connection |
| AMQ-3885 | ActiveMQ java client doesn't scale to thousands of queues |
| AMQ-3887 | Occasional NullPointerException during NetworkConnector connection |
| AMQ-3889 | Body preview of BytesMessages change when browsed multiple times from QueueViewMbean |
| AMQ-3896 | AMQ3622Test throws NumberFormatException on ec2/ubuntu 10.04 |
| AMQ-3897 | Stomp 1.1 keep alive does not work with stomp+nio |
| AMQ-3903 | Failed to fire fast producer advisory, reason: java.lang.NullPointerException |
| AMQ-3905 | activemq:create-broker Karaf command only results in a locally visible broker |
| AMQ-3908 | StompSslAuthTest.testSubscribeWithReceiptNotAuthorized() fails |
| AMQ-3912 | Durable subscribers store messages in error with broker attribute persistent="false" |
| AMQ-3920 | Performance issue with delay policy in DestinationBridge.onMessage |
| AMQ-3923 | Webconsole should import javax.servlet.* too |
| AMQ-3925 | Advisory messages/topics not generated for ActiveMQ.Advisory.FULL or ActiveMQ.Advisory.FastProducer.Queue |
| AMQ-3927 | Can't connect to Stomp 1.1 using telnet |
| AMQ-3929 | Stomp multiple header handling incorrect per the 1.1 spec |
| AMQ-3932 | receiveNoWait hangs when broker is down, using failover and prefetch=0 |
| AMQ-3934 | QueueViewMBean.getMessage throws NullPointerException when message not found |
| AMQ-3939 | FailoverTransport never closes backup connections |
| AMQ-3953 | org.apache.activemq.util.URISupport.isCompositeURI doesn't work properly |
| AMQ-3954 | Intended delivery mode for JMSUsecaseTest is not tested |
| AMQ-3958 | META-INF/spring.schemas does not contain a reference to 5.6.0 schema |
| AMQ-3961 | Durable subscriber only receives part of the persisted messages on re-connect |
| AMQ-3976 | ActiveMQMessageProducer::send uses == instead of equals to compare destinations |
| AMQ-3979 | AjaxServlet preventing Tomcat Container from shutting down |
| AMQ-3981 | ActiveMQSslConnectionFactory.java now has an Apache commons dependency |
| AMQ-3988 | PooledSession throws an Exception at closing |
| AMQ-3989 | ActiveMQSslConnectionFactory.setKeyAndTrustManagers does not work with failover enabled |
| AMQ-3994 | DefaultDatabaseLocker will leak pooled connections on link failure |
| AMQ-3997 | Memory leak in activemq-pool |
| AMQ-4001 | activemq karaf feature uses different commons-lang than pom |
| AMQ-4002 | Instance of BlobTransferPolicy and its URL are being shared among multiple messages |
| AMQ-4007 | BrokerService TempUsage and StoreUsage default values are incorrect |
| AMQ-4017 | Demand forwarding bridge uses value of asyncDispatch for advisory consumers |
| AMQ-4020 | MessageStore IOExceptionHandler needs to deal in StoreExceptions |
| AMQ-4021 | jdbc TransactionContext close does unnecessary checks on autocommit |
| AMQ-4031 | BrokerFactoryBean logs error when starting a non persistent broker |
| AMQ-4033 | Broker uses custom RMIServerSocketFactory class which cannot be unloaded due socket reuse |
| AMQ-4035 | Null pointer in KahaDBStore |
| AMQ-4043 | Web demo - Receive a message page renders an error page |
| AMQ-4044 | Shutting down AcitveMQ broker started in foreground logs 2 times |
| AMQ-4047 | activemq-optional should include the JARs it needs |
| AMQ-4058 | HTTP transport should remove options in URI |
| AMQ-4062 | durableTopicPrefetch attribute in policyEntry in activemq.xml does not take effect |
| AMQ-4070 | catstomp.rb does not work anymore |
| AMQ-4076 | sizePrefixDisabled and/or maxFrameSize change in Apache ActiveMQ 5.6 broke FilePendingMessageCursor for big messages |
| AMQ-4080 | Integrate the FuseSource LevelDB module into the Apache ActiveMQ build |
| AMQ-4084 | Linux/Unix files have incorrect EOL when packaged |
| AMQ-4103 | LeaseDatabaseLocker can not be changed from 5 sec poll |
| AMQ-4104 | STOMP 1.1 CONNECTED frame has erroneously encoded headers |
| AMQ-4108 | Cannot receive ActiveMQ.Advisory.MasterBroker messages when master dies and slave takes control |
| AMQ-4110 | Web console can't send messages to the secured broker |
| AMQ-4115 | Make sure there's no XSS in web demos |
| AMQ-4122 | Lease database locker failover broken |
| AMQ-4142 | SimpleAuthenticationPluginTest hangs intermittently |
| AMQ-4158 | BTreeIndexTest hangs when run on Windows |
| AMQ-4166 | Redelivery plug-in causes a deadlock with JobSchedulerImpl |
| AMQ-4179 | Can't install activemq-extra feature |
| AMQ-4186 | Web console XML views have duplicate contenttype headers - jsp errors |
| AMQ-796 | Client may shutdown when failover connection is reconnecting |
| CAMEL-3458 | Bindy should support clipping fields if they exceed maximum length allowed when using fixed length |
| MB-1002 | <destinationPathSeparatorPlugin/> is not recognized |
| MB-1008 | Exploring JMS examples contains a duplicate type when build all examples in an IDE |
| MB-1013 | Tomcat 6 complains that ActiveMQ doesn't shutdown a thread |
| MB-1028 | NullPointerException when networked broker sends certificate with an invalid user name |
| MB-1029 | Unable to generate unique id when range of ports are blocked |
| MB-1030 | mKahaDB configuration causes activemq-data\mKahaDB\txStore directory to be created from where activemq script is invoked |
| MB-1032 | NullPointerException in LastImageSubscriptionRecoveryPolicy |
| MB-1035 | NullPointerException when starting broker followed by immediate NullPointerException when stopping |
| MB-1036 | ActiveMQ failover Denial of Service |
| MB-1039 | temp queues looping between networked brokers |
| MB-1040 | STOMP "reply-to" headers have extra info prepended by the broker |
| MB-1041 | After receiving exception "Async error occurred: javax.jms.JMSException: The destination temp-queue://ID-xxxx does not exist", broker tore down network connection and re-created the network bridge |
| MB-1043 | NullPointerException while loading node from kahadb during vmcursor replay |
| MB-1045 | Purge command does not accept message selectors |
| MB-1046 | java.lang.NegativeArraySizeException when starting the broker |
| MB-1047 | Virtual Topic Subscriber and Individual Dead Letter Queue Handling |
| MB-1049 | Setting ACTIVEMQ_USER may result in permissions error on the some created files |
| MB-1050 | activemq-admin not setting username & password on JMS Connection used by activemq-admin browse |
| MB-1052 | fileQueueCursor does not support message priority |
| MB-1053 | Examine size of temporary transaction files written to disk |
| MB-1054 | Wrapper scripts configuration needs adjusting with respect to chkconfig and wrapper.java.library.path.1 |
| MB-1058 | NullPointerException when querying a starting broker use JMX program |
| MB-1067 | Space at end of queue name is not honored by consumers |
| MB-1070 | Failover using a JDBC Message Store and Virtual Topic can result in a lost message if queue is empty |
| MB-1072 | ConcurrentModificationException in org.apache.activemq.broker.region.Queue.iterate() |
| MB-1073 | Durable subscribers on durable topics don't receive messages after network disconnect |
| MB-1074 | Connecting to Fuse MQ Enterprise using stomp from telnet issue |
| MB-1075 | Fix Jetty security hole in ActiveMQ 5.5.x |
| MB-1085 | activemq-all.jar is missing the slf4j-log4j12 dependency |
| MB-1086 | Network connector leaks when conduitSubscriptions="true" |
| MB-1087 | activemq-admin browse help prints wrong argument name |
| MB-1096 | Suspicious NullPointerException in log when network bridge cannot be established and loggingBrokerPlugin configured |
| MB-1098 | Topic subscriber is assumed to be slow consumer when prefetch is set to one |
| MB-1102 | JMX stats are off when a duplicate consumer ID is added when using failover URI |
| MB-1104 | STOMP subscriber does not receive TextMessage with null body sent from JMS |
| MB-1105 | StompNIOTransport doStop should check for null before calling selection.stop() |
| MB-1106 | Repeated call to PooledConnection.setClientID() with the same client Id should not raise a IllegalStateException("Setting clientID on a used Connection is not allowed") |
| MB-1108 | Scheduled/Delayed messages lost during ungraceful broker shutdown |
| MB-1111 | Composite destinations break simple authorisation through role aggregation |
| MB-1112 | DurableSubProcessWithRestartTest intermittently throws java.lang.ClassCastException: org.apache.kahadb.index.BTreeNode cannot be cast to org.apache.kahadb.index.ListNode |
| MB-1115 | Fuse MQ Enterprise JMX stats shows negative queue size |
| MB-1117 | KahaDB journal files retained after delay in "unsubscribing" durable subscriber from topic |
| MB-1120 | NullPointerException exception occurs when stopping broker |
| MB-1125 | Please make bstat more tolerant of InstancesNotFound situations |
| MB-1129 | Duplex option on network connector not supported |
| MB-1130 | Non-persistent messages held in memory are not cleaned up when destination is deleted |
| MB-1133 | In the DurableSubProcessWithRestartTest acknowledged messages appear to intermittently be redelivered to the subscriber |
| MB-1134 | Why do we need to get the Size/Count of the Topic messages during consumer remove |
| MB-1136 | PendingMessages not being dispatched to DurableSubscriber |
| MB-1140 | Broker performance does not scale with multiple consumers when using JDBC persistence adapter |
| MB-1144 | Invalid error: NACK received but connection is in v1.0 mode using a STOMP client |
| MB-1152 | The defined SslContext is not used by the https transport protocol |
| MB-1159 | The current sslContext element does not provide the ability to define the keystore key password key |
| MB-1161 | CachedLDAPAuthorizationMap can't reconnect to LDAP Server if the LDAP server was temporarily down |
| MB-1164 | The MirroredQueue feature uses the Topic MemoryUsage instead of the Queue MemoryUsage when forwarding the message to the queue after sending it to the Topic |
| MB-1167 | Investigate startup deadlock with vm transport |
| MB-1169 | Broker should not send advisories for slow consumers or fast producers if the destination in question is an advisory destination already |
| MB-1173 | Broker sends a RECEIPT frame although the subscription fails |
| MB-1174 | The JMX message move, copy and remove operation do not take messages in FIFO order |
| MB-1175 | Messages sometimes not received by active subscription |
| MB-1176 | JMX connector does not bind to a specific port when a connectHost is specified on the managementContext |
| MB-1179 | Fuse icon file webapps/favicon.ico is broken |
| MB-1180 | Add ability to set a timeout for the calls made to Broker MBeans |
| MB-1185 | JConsole browse() function does not work if useCache=false |
| MB-1186 | Duplicated durable subscriptions after broker restart with option keepDurableSubsActive=true |
| MB-1190 | data.db size is not included in calculation to monitor systemUsage settings |
| MB-1196 | Remove the synchronized definition from the ActiveMQEndpointWorker anonymous Work instance |
| MB-1197 | Race condition with StompServlet and transport listener for websockets |
| MB-1198 | data.db is not cleaned up properly when durable subscribers come and go off-line |
| MB-1199 | NullPointerException exception in kahadb after index issue |
| MB-1200 | NetworkBridgeFilterFactory should be assigned to Queue not NetworkBridge |
| MB-1203 | Expired msgs not getting acked to broker causing consumer to fill up its prefetch and not getting more msgs |
| MB-1207 | ActiveMQConnection temp advisory consumer should respect asyncDispatch flag - can cause deadlock with slow consumers |
| MB-1208 | Enqueue counts with jms.prefetchPolicy.all=0 |
| MB-1211 | When durable subscriber is stopped and then reconnects, messages are consumed but the pending queue count seems to stay 1 plus prefetch size or at prefetch size |
| MB-1212 | BlobJDBCAdapter has invalid SQL for addStatements |
| MB-1214 | Closing a PooledConnection does not seem to return associated sessions to the SessionPool |
| MB-1220 | Web sockets demo fails when using localhost in connect uri |
| MB-1224 | ExpiredMessages > Prefetch Queue results in messages no longer being dequeued |
| MB-1226 | Infinite TemqQueue advisory messages |
| MB-1229 | Unable to configure memory limit on temporary topics |
| MB-1231 | db.data file exhibiting abnormal growth |
| MB-1234 | Killing ws:// connection after it has timed out (websocket.maxIdleTime=1000) from browser results in MBean Connection-> ws_sockets not being cleaned up |
| MB-1238 | Problem with STOMP NIO + SSL |
| MB-1239 | NIO + SSL: Client certificates are null |
| MB-1241 | Missing some binary files in the release kit |
| MB-1248 | Questionable processing of interruptions in TcpTransport::doStop |
| MB-851 | Authorization failing with Open LDAP |
| MB-864 | Intermittent performance degradation JDBC in the persistence adapter when a durable subscriber of priority messages falls behind |
| MB-884 | Forwarded message cannot be distributed to the original broker |
| MB-885 | Avoid stuck messages in a network of brokers |
| MB-894 | Invalid data sent to nio:// throws OutOfMemoryException and may crash the broker |
| MB-903 | STOMP Connection MBean fails to register |
| MB-907 | Stomp consumer might not receive all msgs of a queue |
| MB-912 | Unable to access Serializable class when receiving ObjectMessage in OSGi environment |
| MB-914 | Fuse MQ Enterprise not stopping via JMX on AIX platform |
| MB-915 | Investigate scalability of JDBC topic store with regards to durable subscriptions |
| MB-916 | Expose isSlowConsumer for SubscriptionView |
| MB-918 | Connections web console page shows two rows per connection |
| MB-919 | staticallyIncludedDestinations should always be forwarded |
| MB-922 | Broker restart fails with java.io.OptionalDataException when trying to recover ProducerAudit LRUCache |
| MB-923 | Implement eviction strategy based on property value uniqueness |
| MB-926 | Broker may deadlock when creating queues under load |
| MB-927 | Change Transport Failed message from INFO to WARN level |
| MB-929 | Some brokers connections cannot be killed |
| MB-931 | Web console shows incorrect number of messages for topic |
| MB-932 | activemq-web: SessionPool.returnSession() should discard sessions that are closed |
| MB-934 | Cannot publish to a deleted temp-queue destination |
| MB-936 | Change way Broker MBean name is generated so that port is not used |
| MB-940 | Unable to create durable subscriber with JMS selector using admin console |
| MB-945 | Numeric selectors do not work in STOMP |
| MB-950 | The persistent Stomp header is not part of a received StompFrame message |
| MB-953 | Stomp subscription with receipt on an existing queue hangs |
| MB-954 | Incorrect JMX properties after consuming messages using Stomp |
| MB-957 | Stomp RECEIPT frame sent twice for the same msg causing error in STOMP consumer |
| MB-964 | Large number of expiring messages causing QueueSize to grow |
| MB-966 | DLQ from a durable subscriber filling with expired messages results in non-expired messages not being read |
| MB-970 | Problem with static List ENDED_XA_TRANSACTION_CONTEXTS in org.apache.activemq.TransactionContext |
| MB-971 | Transport scheme NOT recognized: [http] in an osgi environment |
| MB-974 | ./activemq script cannot be started on Solaris OS 10 |
| MB-977 | ORA-01465: invalid hex number when using Oracle backend in the latest releases |
| MB-978 | NullPointerException in TraceBrokerPath plug-in |
| MB-979 | NetworkConnector MBean unregistration can fail with a transport disconnect and leave a dangling mbean |
| MB-980 | Display issue viewing queues in jmx and admin console when using Oracle DB as a backend |
| MB-982 | Failover issues in network connector |
| MB-985 | TimeStampingBrokerPlugin causes messages to expire in DLQ queue |
| MB-991 | When a producer from a network bridge is blocked by producer flow control, all producers from the network bridge get blocked |
| MB-992 | NullPointerException in KahaDB on stopping during broker restart |
| MB-996 | NullPointerException on websocket connection |
| MB-998 | InterruptedException in InactivityMonitor |
| MB-778 | Deleting a Queue from the console results in lost messages |
| MB-798 | Problem with distributed XA Camel/ActiveMQ recovery |
| MB-699 | Temporary queues create advisory topics without bound |
| AMQ-3945 | QueueBrowser missing messages on first browse |
| AMQ-3947 | ActiveMQConnectionFactory doesn't set the nestedMapAndListEnabled property on new Connections |
| MB-1089 | Syntax errors are not showing up in the log when the broker is started in the background |
| AMQ-1853 | Optional non-blocking redelivery |
| AMQ-2834 | Producers blocks when global storeUsage is smaller than persistent adapter chunk size; should warn of incorrect configuration |
Table 4.2 lists the issues resolved between 7.0.2 and 7.1.
Table 4.2. Container Issues Resolved in 7.1
| Issue | Description |
|---|---|
| ARIES-292 | Unable to delete the *.eba file from the samples/blog/blog-assembly/target/load folder while it was running |
| ARIES-523 | Misleading message from PersistenceBundleHelper |
| ARIES-537 | Update ScopeAdmin impl to latest ResolverHook API |
| ARIES-546 | SCM references in parent POM still point to incubator |
| ARIES-547 | Fix up wrong or missing licenses in application module |
| ARIES-548 | Remove references to incubator from code base in trunk and in 0.3-RCx branch |
| ARIES-550 | Fix intermittent application itest failure testDemoAppResolveFail |
| ARIES-554 | Aries JNDI bundle breaks remote JMX clients via RMI |
| ARIES-556 | Aries fails to read persistence.xml files larger than 8192 bytes |
| ARIES-558 | Risk of deadlock in BundleQuiescer.run() |
| ARIES-559 | Isolated framework should work off current bundle list |
| ARIES-563 | The NamespaceHandlerRegistryImpl does not actually reuse parsed schemas |
| ARIES-564 | The cm and ext namespaces should be lazy managers |
| ARIES-566 | NullPointerException when generating bundle repository for invalid bundle location |
| ARIES-568 | More memory leaks |
| ARIES-572 | NamingException in JMXConnectionFactory.connect() calls with JMX over RMI calls |
| ARIES-573 | Java2 security problem in Aries Managed Persistence contexts |
| ARIES-576 | When the grace period is up the error message reports all services as missing, not the missing ones |
| ARIES-579 | Update the name in the proxy-api and proxy-impl |
| ARIES-584 | Blueprint managed service factory instantiates duplicate service |
| ARIES-586 | Isolation based runtime doesn't work when resolving maven generated blueprint bundles |
| ARIES-591 | Application isolation code doesn't cope properly with a warm start |
| ARIES-593 | ManifestHeaderProcessor can't handle directives with spaces before ":=" |
| ARIES-599 | Consistently use SLF4J Logging |
| ARIES-602 | osgi.console port is not handled well |
| ARIES-604 | ClassCastException in Felix bundle repository when generating repository XML |
| ARIES-608 | DefaultWorker fails if loaded during framework shutdown |
| ARIES-609 | AriesFrameworkUtil uses DefaultWorker on Equinox rather than the Equinox worker |
| ARIES-612 | Cannot access referenced service in destroy-method |
| ARIES-613 | Use error() instead of info() log in BeanRecipe.destroy() on exception |
| ARIES-622 | Close inputstreams in Application utils ManifestProcessor |
| ARIES-623 | Another deadlock in Blueprint service lookup |
| ARIES-624 | Missing version for asm import in proxy impl |
| ARIES-626 | Aries Blueprint namaspace handler schema with includes |
| ARIES-634 | No thread safety in Blueprint Quiesce Participant |
| ARIES-635 | Can't find resource for bundle org.apache.aries.application.management.messages.AppManagementMessages |
| ARIES-637 | Woven Proxy does not cope well with inner classes |
| ARIES-647 | JNDI ObjectFactoryHelper and ContextHelper have wide doPriv blocks |
| ARIES-654 | Blueprint annotation scanning generates duplicate elements when annotated class is in fragment |
| ARIES-661 | Deployment manifest Import-Packges ends up in strange format |
| ARIES-662 | More problems with versioning and the application module |
| ARIES-665 | Proxy weaving code must preserve SerialVersionUID |
| ARIES-666 | Proxy weaving code needs to deal better with missing classes and superclasses in other bundles |
| ARIES-667 | OBRAriesResolver can return bundle information for bundles with higher version than expected |
| ARIES-668 | Proxy or weaving code should not mark added synthetic methods final |
| ARIES-669 | Proxy or weaving code should mark all its changes synthetic |
| ARIES-670 | blueprint.api bundle exports org.osgi.service.blueprint package at version 0.0.0 |
| ARIES-673 | Proxy code changes handlable NoClassDefFoundError into ClassFormatError |
| ARIES-674 | Do not proxy javax.* |
| ARIES-677 | Service references released before bean destroy methods execute during namespace handler unregister |
| ARIES-678 | Java2 security not working for proxied interface |
| ARIES-680 | Be more careful to use scope provided external dependencies |
| ARIES-688 | ASM package imports are unversioned in proxy-bundle |
| ARIES-690 | ClassCircularityError caused by proxy weaving |
| ARIES-693 | Interface proxy does not delegate Object methods like equals, hashCode or toString |
| ARIES-694 | Proxy manager can return a stale proxy built against a previous classloader for bundles having undergone refresh |
| ARIES-696 | Blueprint container can appear to loose memory when frequently restarted |
| ARIES-697 | Java 2 security permission failure in JNDI - Util code path |
| ARIES-698 | Missing message resource |
| ARIES-700 | MBean Tracker should listen for all services |
| ARIES-703 | JDKProxyManager cannot proxy blueprint beans |
| ARIES-704 | BundleToClassLoaderAdapter does not implement loadClass(String, boolean) |
| ARIES-705 | Proxy code is weaving JPA metamodel classes and can cause JPA errors |
| ARIES-709 | Well behaved shutdown of the application runtime |
| ARIES-711 | JMX core whiteboard doesn't shutdown well |
| ARIES-714 | SimpleBundleInfo.getExportService() returning wrong value |
| ARIES-720 | Improve waiting for namespace handler message |
| ARIES-721 | NullPointerException in BeanRecipe.getDestroyMethod |
| ARIES-725 | Aries Application modeller does not find and model anonymous inner Blueprint reference or service components |
| ARIES-726 | NullPointerException in CompositeClassLoader |
| ARIES-730 | Generation of the osgi.identity requirement must support version ranges |
| ARIES-736 | Aries does not take into account the concept of complete/incomplete Persistence Units |
| ARIES-738 | The subsystem resolver hook modifies a collection it's iterating over |
| ARIES-743 | Subclass cannot be created by ProxySubclassGenerator when there is static final method |
| ARIES-745 | Miss parsing default properties defined by new blueprint-ext 1.1.0 schema |
| ARIES-746 | Aries Proxy fails to properly proxy Object methods for interfaces |
| ARIES-750 | Minor memory leak for composite frameworks inside applications |
| ARIES-762 | Bundle framework manager bean should be lazy |
| ARIES-763 | Remove OSGi VersionRange dependency |
| ARIES-764 | JNDI can go into an infinite loop |
| ARIES-765 | Attempting to execute an operation on a closed EntityManagerFactory when the persistence unit is re-deployed |
| ARIES-767 | Service property assigned with a service reference gets a ServiceProxyWrapper |
| ARIES-768 | Application manager can take 5 minutes to shutdown |
| ARIES-769 | ClassCastException during JNDI lookup from WAB inside EBA |
| ARIES-770 | BundleFrameworkConfigurationFactoryImpl breaks LDAP syntax of service Filter |
| ARIES-771 | Blueprint config admin pulls in non-exported blueprint internals |
| ARIES-774 | Problem modelling nested bundles |
| ARIES-775 | ClassCircularityError while weaving a class |
| ARIES-776 | NullPointerException in AriesFrameworkUtil and DefaultWorker static initializers |
| ARIES-777 | AriesFrameworkUtil FelixWorker doesn't work on r4.3 felixes |
| ARIES-778 | RecursiveBundleTracker doesn't work across isolated Regions |
| ARIES-782 | AbstractCompendiumHandler uses ServiceTracker.getTrackingCount in the wrong way |
| ARIES-787 | Class proxying should not be enabled by default |
| ARIES-788 | Possible NullPointException when destroying the blueprint container |
| ARIES-796 | PropertyPlaceHolder does not really like JPA elements |
| ARIES-797 | Ease blueprint 0.2 to 0.4 compatibility changes |
| ARIES-799 | Aries Repository Generation does not respect blueprint collection semantics |
| ARIES-800 | Closing a recursive bundle tracker opens it |
| ARIES-801 | Aries Proxy cannot proxy abstract classes |
| ARIES-802 | Dependent restart causes ComponentNameAlreadyInUseException: Name 'blueprintContainer' is already in use by a registered component |
| ARIES-803 | Versioning problems in JNDI 0.3.1 release bundles |
| ARIES-804 | Unable to delete EBA file if the value of defaultUseCaches is set to false on JarURLConnection on a separate thread during installation |
| ARIES-808 | Problem with JPAWeavingHook in an environment that uses Composite Bundles |
| ARIES-809 | Not possible to configure transaction timeout |
| ARIES-819 | OsgiFriendlyClassWriter.getCommonSuperClass appears to have some errors |
| ARIES-820 | New org.apache.aries.util-0.5 jar exports org.apache.aries.util package at same version as the v0.4 jar despite new classes existing in package |
| ARIES-829 | ReferenceListRecepie releases using the wrong BundleContext |
| ARIES-830 | Service registration is not removed when an application is uninstalled |
| ARIES-831 | Java 2 security AccessControlException when using JNDI lookup with java2 security enabled |
| ARIES-832 | JPA load-time enhamcement fails for a WAB |
| ARIES-833 | Weaving controller switch does not work on IBM JVM v6 |
| ARIES-834 | Unable to convert value ListIndexIterable to type java.lang.Iterable<Something> |
| ARIES-838 | ClassCircularityError in BlueprintContainerImpl when using a security manager |
| ARIES-843 | Bean can not be created if constructor argument use generics |
| ARIES-846 | The Aries transaction manager does not recover transactions correctly |
| ARIES-847 | NullpointerException in org.apache.aries.blueprint.container.BeanRecipe.destroy |
| ARIES-848 | blueprint-annotation-impl should actually make use of it's properties |
| ARIES-851 | BundleTrackerCustomizer in BundleHookBundleTracker is called multiple times for the same event |
| ARIES-854 | NullpointerException in TransactionManager when Felix configAdmin is used |
| ARIES-856 | Possible deadlock when starting the transaction manager |
| ARIES-861 | Error on retrieving constructor for proxy of Apache Karaf BlueprintCommand class on jdk 6 update 33 |
| ARIES-863 | Blueprint container needs to use bundle's permissions, not its own permissions, for looking up services |
| ARIES-867 | Deadlock if stopping a blueprint bundle while the blueprint container is in the create state |
| ARIES-872 | PersistenceDescriptorParserImpl doesn't accept namespace prefixed tags |
| ARIES-874 | Blueprint should treat "value-type" on a map as a default, not a requirement |
| ARIES-875 | ReferenceRecipe may "unget" a service without ever "getting" it |
| ARIES-877 | The BeanRecipe is missing the factory recipe as a dependency |
| ARIES-878 | Threading issues with <cm:managed-properties /> |
| ARIES-880 | When recovering transactions, only recover old branches to avoid rollback of in-progress transactions |
| ARIES-881 | The transaction manager is very slow in low concurrency |
| ARIES-882 | A thread is not stopped when the transaction manager is destroyed |
| ARIES-884 | ClassCastException in JMX when installing some bundles |
| ARIES-885 | In container managed mode, a single non thread safe entity manager is used to service all requests when no transaction is active |
| ARIES-894 | Unable to access public methods overridden/implemented in a protected class |
| ARIES-895 | Missing filter directive on Require-Capability does not translate to a filter value of <namespace>=* |
| ARIES-896 | Deadlock with blueprint services |
| ARIES-897 | The ReferenceRecipe sometimes unget the tracked service for no reason |
| ARIES-898 | The blueprint container is not correctly cleaned when a mandatory namespace is unregistered |
| ARIES-899 | Possible concurrent access to the namespace handler registry |
| ARIES-900 | Unresolvable root subsystem should have no effect on the system |
| ARIES-901 | Version attribute not applied to multiple package names separated by semicolons in import package header |
| ARIES-902 | Reference counts not being checked before removing constituent relationships between the "provisioned to" subsystem and bundle resources |
| ARIES-907 | Persisted, unscoped subsystems are not being correctly started on restarts |
| ARIES-918 | Start operations on the root subsystem should not affect its constituent bundles |
| ARIES-921 | java.lang.IllegalStateException: Orphaned bundle revision detected: org.eclipse.osgi_3.8.0.v20120529-1548 |
| ARIES-922 | NullPointerException in SubsystemResource.findContent |
| ARIES-923 | A service proxy obtained from a reference list can return a null service, leading to NullPointerException |
| ARIES-930 | The abstract reference recipe may end up tracking the same reference multiple times |
| ESB-1604 | Intermittent exception when starting Apache Karaf - org.apache.aries.jmx - 0.3.0 | MBean is already registered |
| ESB-1607 | If debug logging is enabled on a clean install a deadlock occurs |
| ESB-1670 | Karaf JMX Config MBean behaves in unpredictable ways |
| ESB-1683 | Configuration of org.apache.aries.transaction.cfg not honored at runtime when Aries TX Manager is created |
| ESB-1740 | The bundles permissions are bypassed when running code from the console |
| ESB-1741 | Add the needed stuff to ease running karaf in a secured mode |
| ESB-1756 | When Karaf Master lock is lost it should not try to regain the lock during shutdown |
| FELIX-3760 | Clean webconsole startup and disposal |
| KARAF-1040 | Commands should not catch exceptions but should rethrow them |
| KARAF-1050 | osgi:start xxx doesn't print anything |
| KARAF-1066 | Make features XML parser more forgiving |
| KARAF-1101 | Completion does not work when quiesce manager is deployed |
| KARAF-1117 | Log messages appear on stdout when the feature http is installed |
| KARAF-1122 | Feature <configfile/> creates an empty file if the file URL is not resolved |
| KARAF-1124 | Apache Karaf does not work properly with closing brace in the working directory path |
| KARAF-1133 | Error executing command 'start' when starting a child instance |
| KARAF-1139 | Redeploy kar causes the installation of old feature |
| KARAF-1143 | Karaf (Config Mbean) can not recognize the features when installation path contains blank space |
| KARAF-1144 | When running a single remote command through SSH, the SCOPE variable isn't set |
| KARAF-1161 | shell:new does not support the creation of arrays |
| KARAF-1162 | A command that can not be loaded breaks the whole completion |
| KARAF-1164 | Archetypes are not valid |
| KARAF-1174 | The war feature cannot be installed after the cxf feature |
| KARAF-1175 | Duplicate key exception should be handle locally to avoid to affect the whole MBean |
| KARAF-1179 | dev:watch * doesn't notice new bundles added to the container |
| KARAF-1182 | Apache Karaf features-maven-plugin always selects lowest version in range |
| KARAF-1199 | dev:watch issues "[WATCH]" announcements only to the issuing shell |
| KARAF-1202 | log:tail spins with debug on |
| KARAF-1212 | NullPointerException during update of the FeatureFinder |
| KARAF-1215 | Shell scripts are incompatible with /bin/sh on Solaris |
| KARAF-1216 | add-features-to-repo goal does not reclaim file handles fast enough |
| KARAF-1220 | o.p.karaf.management bundles must stop when its configured keystore is not available |
| KARAF-1226 | Karaf Client cannot run a script |
| KARAF-1252 | Features core bundle should not depend to shell and management bundles |
| KARAF-1256 | Archetypes should use dynamic variables |
| KARAF-1257 | Configuration completers should avoid using getConfiguration method of config admin |
| KARAF-1260 | Console doesn't like it when the console window is to small - no line wrapping for commands |
| KARAF-1265 | Add AIX, HP-UX, Solaris, and "custom" support in the service wrapper |
| KARAF-1268 | Allow multiple commands in karaf script |
| KARAF-1279 | IOExceptions used in an incompatible way with Java 5 |
| KARAF-1284 | Karaf bundle archetype maven bundle plugin configuration is missing "instructions" tags |
| KARAF-1298 | dev:watch does not work in some cases |
| KARAF-1304 | Quick help text for features:info is erroneous |
| KARAF-1305 | Error with Basic HTTP Authentication when using karaf realm |
| KARAF-1318 | User bundles are treated as system bundles |
| KARAF-1343 | Features repo points to the old pax-wicket app |
| KARAF-1354 | SSH Log-In failes with "Authentication failed" with valid credentials |
| KARAF-1360 | Configration update doesn't work |
| KARAF-1373 | features-maven-plugin, unexpected text in stderr |
| KARAF-1374 | Fileinstaller logging is not enabled by default |
| KARAF-1387 | Warning to missing a feature repository name even when the name is defined |
| KARAF-1388 | SSHD authorized key provider should log in DEBUG |
| KARAF-1389 | SSH doesn't correctly use the karaf.base variable |
| KARAF-1392 | Removing a KAR should uninstall the shipped features |
| KARAF-1394 | Custom login modules not seen with Equinox |
| KARAF-1416 | Blueprint archetype instructions is missing |
| KARAF-1430 | Default child instance config is not the same as the root instance |
| KARAF-1491 | Admin service not able to start child instances when the JDK path contains a space on OS X |
| KARAF-1496 | Bad login when using sufficient modules but when the first fail |
| KARAF-1529 | command-watch messes the output when used with commands that take longer than the interval |
| KARAF-1538 | Exceptions when unregistering MBeans during a restart |
| KARAF-1541 | jaas:realm-manage raises a NullPointerException |
| KARAF-1564 | karaf feature validate plugin should support to load the exports packages from dependency features |
| KARAF-1566 | instance:clone set the source instance in error |
| KARAF-1573 | Potential ZipFile leak at KarArtifactInstaller.install() |
| KARAF-1585 | Installing using wrap protocol fails when specifying bundle version |
| KARAF-1587 | When executing a command through the client, no error is printed in the console in case of errors |
| KARAF-1609 | command-watch info does not work |
| KARAF-1617 | Blueprint deployer in combination with maven URL deployer creates wrong OSGi/blueprint/ file |
| KARAF-1666 | Default configuration for jetty.xml could create problems |
| KARAF-1675 | Wrapper service requires a shell |
| KARAF-1683 | "no matching cipher found" error connecting via SSH to wrapper Karaf service - on Ubuntu |
| KARAF-1695 | Startup fails on Windows with only JRE installed |
| KARAF-1699 | MBeans should support the same flags as the commands |
| KARAF-1702 | Stopping the console bundle should not shutdown the OSGi framework |
| KARAF-1706 | Features bundle versions are not consistent |
| KARAF-1715 | Occasional freeze on feature:install webconsole |
| KARAF-1736 | Feature spring-struts can't be installed |
| KARAF-1754 | Updating features.xml in auto deploy folder results in duplication |
| KARAF-1756 | No SSH connection possible on Debian 6.0.5 |
| KARAF-1759 | No way to start obr dependencies by default |
| KARAF-1765 | The obr shell deploy and start commands always deploy optional dependencies |
| KARAF-1796 | Feature install sequence should be install/install/install...start/start/start |
| KARAF-1797 | NullPointerException thrown from OsgiConfiguration.unregister |
| KARAF-1809 | Feature spring-web-portlet can't be installed |
| KARAF-1814 | Cursor keys do not work when using bin/client on windows |
| KARAF-1815 | When ssh'ing from a Windows box into a Unix box, arrow keys are not correctly interpreted |
| KARAF-1821 | Some etc files are executable whereas it should not be |
| KARAF-1822 | BundlesMBean should use bundles attribute instead of list() operation |
| KARAF-1824 | tooling-exam contains reference to wrong commons-io artifact |
| KARAF-1825 | SystemMBean should provide startLevel attribute |
| KARAF-1826 | ConfigMBean should use configs attribute instead of list() operation |
| KARAF-1830 | ObrMBean should use attribute for bundles and URLs instead of list operations |
| KARAF-1831 | PackagesMBean should use attributes for imported/exported packages instead of operations |
| KARAF-1832 | ServicesMBean should use attribute instead of list() operation |
| KARAF-1839 | System bundle also should export javax.xml.ws.spi.http package |
| KARAF-1840 | Should also endorse saaj-api |
| KARAF-1845 | Minimal distribution doesn't start |
| KARAF-1852 | OSGi packages are exported with wrong versions |
| KARAF-1853 | Attached kar deploys to a different snapshot build number than the main artifact |
| KARAF-1879 | admin management bundle has unecessary imports |
| KARAF-1882 | Provide level attribute in the LogMBean |
| KARAF-1888 | Remove aliases by default |
| KARAF-1905 | ASM4 causes the Proxy/Weaving of Xerces, but that then causes validation factories to fail |
| KARAF-1949 | console shutdown -f hang |
| KARAF-1978 | If use script to start a child instance then using karaf console admin:list can't get the instance correct status |
| KARAF-1986 | instance.properties file doesn't get updated if karaf.name is changed |
| KARAF-1992 | PropertiesLoginModule handles usernames with backslash not correct |
| KARAF-2051 | Duplicate definition of org.ops4j.pax.url.mvn.localRepository in org.ops4j.pax.url.mvn.cfg |
| KARAF-2052 | Progress bar doesn't display properly on 80 char consoles |
| KARAF-536 | Backspace no longer works in Putty after using 'connect' command to connect to other instance, and commands are printed in only 2 columns |
| KARAF-913 | Omitted @Command on Gogo plugin is hard to debug because of NullPointerException |
| ENTESB-286 | admin:list always throws java.io.IOException even if the command is successful |
| ENTESB-287 | Child containers command line gets truncated around at approx 55chars |
| ENTESB-291 | Please make make rmiRegistryHost configurable |
| ENTESB-292 | IllegalStateException when the peristence bundle gets resolved |
| ENTESB-306 | pax web still using uninstalled bundle |
| ENTESB-307 | After starting child container with admin start child, karaf admin:list still
shows state stopped, not showing started |
| ENTESB-419 | Cannot install patches as shell script |
| ENTESB-420 | Cannot uninstall patch |
| ENTESB-450 | jaas:manage cannot attach to ZookeeperLoginModule |
Table 4.3 lists the issues resolved between 7.0.2 and 7.1.
Table 4.3. Fuse Fabric Issues Resolved in 7.1
| Issue | Description |
|---|---|
| FABRIC-226 | aws-ec2 cloud provider attempts to connect before it is configured |
| FABRIC-245 | setting resolver to a value other than localhostname doesn't appear to take effect for cloud containers |
| FABRIC-248 | Asynchronous registration of a cloud provider to zookeeper is broken |
| FABRIC-254 | Can't use profile-edit to set a property than contains equal signs |
| FABRIC-270 | Race condition when creating remote ensemble servers |
| FABRIC-277 | There are cases were the fabric agent falls inside an infinite loop updating itself |
| FABRIC-279 | ClassNotFoundException: org.apache.felix.service.command.Function |
| FABRIC-282 | The fabric-camel component is not accepting options in the URI |
| FABRIC-286 | fabric:container-create-ssh will create the specified number of remote root containers, but only 1 is accessible |
| FABRIC-290 | fabric-ensemble-create has the wrong completer for commands |
| FABRIC-291 | Falling back to the defualt profile doesn't always work |
| FABRIC-293 | fabric-jclouds restarts the shell |
| FABRIC-294 | NullPointerException in cloud-provider-remove |
| FABRIC-295 | Child containers should reuse their parents resolver and addresses |
| FABRIC-297 | Artifacts stored in the root container's system repo directory do not get updated |
| FABRIC-300 | The patching service should properly handle options on symbolic names |
| FABRIC-301 | Fabric zookeeper digest uses platform dependent String.getBytes() |
| FABRIC-302 | When creating Fuse Management Console, a bunch of jclouds related exceptions appear in the log |
| FABRIC-303 | The upgrade to karaf-jclouds 1.5.3 causes Fuse Management Console to fail provisioning |
| FABRIC-307 | fabric:create always ask for a login/password |
| FABRIC-308 | The agent downloads jars that are already present in the system folder |
| FABRIC-309 | The mq profile doesn't deploy a broker |
| FABRIC-310 | Installing the zookeeper commands fails |
| FABRIC-312 | IOException when trying to create containers based on example-mq or example-camel profiles |
| FABRIC-313 | When creating a fabric using Fuse Management Console, a lot of jersey related NullPointerException are logged |
| FABRIC-315 | The demo package has changed |
| FABRIC-318 | The fabric features service does handle recreating the ensemble gracefully |
| FABRIC-323 | IllegalStateException: No ssh agent found trying to connect to a child container |
| FABRIC-324 | The response to fabric:create without password options is confusing |
| FABRIC-325 | The --resolver option in fabric:join has incorrect online help |
| FABRIC-328 | Child container with just the default profile fails to provision successfully |
| FABRIC-330 | fabric:join fails with an authentication error |
| FABRIC-331 | fabric:container-create-cloud new-user options are not working |
| FABRIC-332 | fabric:create username/password prompt - Weird Unicode symbols when backspace pressed |
| FABRIC-333 | Typo in error message when installing features on a managed container |
| FABRIC-334 | WARN: listeners are taking too long to process the events |
| FABRIC-336 | fabric-jolokia doesn't compile when using Java 7 |
| FABRIC-337 | Connecting to a container without specifying the --username option causes a NullPointerException |
| FABRIC-339 | Typo in fabric error message |
| FABRIC-340 | fabric:container-create-child can throw a NullPointerException |
Table 5.1 lists the enhancements between 7.0.2 and 7.1.
Table 5.1. Messaging Enhancements in 7.1
| Enhancement | Description |
|---|---|
| MB-1024 | Revert the Oracle jdbc adapter to a variant of the default jdbc adapter in place of the one supporting blobs |
| AMQ-1191 | JDBC based Master/Slave not supported for TransactSQL based databases (SQL Server and Sybase) |
| AMQ-1492 | SET AUTOCOMMIT TO OFF is no longer supported Postgre8.1 Error |
| AMQ-1514 | Patch HTTP connector to support proxy authentication if proxyUsername and proxyPassword provided |
| AMQ-1540 | Patch to trim spaces from entry fields in web console app |
| AMQ-1905 | Method required: ObjectName[] ConnectionViewMBean.getConsumers() |
| AMQ-1907 | Method required: ObjectName SubscriptionViewMBean.getConnection() |
| AMQ-2229 | Remove warnings from CSS file |
| AMQ-2535 | Jetty SSL configuration |
| AMQ-2741 | Provide visibility onto destination SlowConsumerStrategy via JMX |
| AMQ-2845 | log4j conf reload via JMX ignores log4j.configuration setting |
| AMQ-2911 | Option to make all consumers retroactive |
| AMQ-2961 | Audit, test and update libraries in latest Apache ActiveMQ distribution |
| AMQ-3074 | Expose TransportConnection.stopping |
| AMQ-3116 | Unicode characters are not shown correctly in message body |
| AMQ-3135 | ActiveMQ.Advisory.Connection messages should contain client ip/host |
| AMQ-3137 | Outbound bridges should handle remote connectivity problems at startup |
| AMQ-3173 | Better representation of ActiveMQMessage messages on server page message.jsp |
| AMQ-3224 | Redelivery per destination |
| AMQ-3227 | Support synchronous sending in ActiveMQ streams |
| AMQ-3322 | Minor code improvements in security module |
| AMQ-3326 | Synchronization point in RegionBroker adding and removing producers and consumers |
| AMQ-3339 | Allow for an option to bound the number of GC'd Destinations when using gcInactiveDestinations=true |
| AMQ-3383 | Add a string property (token) to ConnectionControl so the broker could potentially communicate a security token to a client after it authenticates |
| AMQ-3406 | Enable BrokerServiceAware support for DiscoveryAgent |
| AMQ-3410 | AbstractAmqCommand should allow the connection factory to be changed |
| AMQ-3412 | activemq-camel bundle dosen't need to export the package of META-INF.services.org.apache.camel |
| AMQ-3415 | Show message timestamp in the RSS pubDate field in Web console |
| AMQ-3436 | Support prioritization of messages pending dispatch |
| AMQ-3439 | NetworkConnectorViewMBean doesn't expose
suppressDuplicateQueueSubscriptions and suppressDuplicateTopicSubscriptions |
| AMQ-3449 | Add Stomp v1.1 support |
| AMQ-3464 | XML view for subscribers in admin console |
| AMQ-3474 | Investigate further onUsageChange flushing for FilePendingMessageCursor |
| AMQ-3482 | Make PooledConnectionFactory's sessionPool non-blocking in case its full |
| AMQ-3483 | Cleanup TODOs "Auto-generated catch block" to improve the quality of Tag List Report |
| AMQ-3486 | Add check to prevent Durable Subscriptions on Session that are in Individual Ack mode |
| AMQ-3500 | Setting destination options should validate against typos |
| AMQ-3508 | SSL and TLS - Support list of included and excluded protocols |
| AMQ-3512 | Using browse command fails when a message with an array of bytes is encountered |
| AMQ-3533 | mKahaDB, allow the directory of a filtered destination to be specified, such that destination journals can be split across disks |
| AMQ-3554 | activemq:create should use name as argument in place of option |
| AMQ-3558 | Allow the base network consumer priority to be configured on a networkConnector |
| AMQ-3573 | Hardcoded defaults for systemUsage not suitable for out of the box |
| AMQ-3574 | Enable systemUsage configuration in activemq.xml out of the box |
| AMQ-3609 | Turn inactivity monitor thread off by default |
| AMQ-3615 | Advisory broker replay of destination advisories needs to distinguish temp destination from regular destination |
| AMQ-3638 | Add LFU page cache as an option for kahaDB |
| AMQ-3639 | Modify MKahaDB To support using one adapter per destination without explicitly listing every destination in the configuration |
| AMQ-3646 | Allow KahaDB to run without disk syncs, higher throughput without the JMS persistence guarantee |
| AMQ-3667 | Use 1G heap by default and UseDedicatedTaskRunner=false |
| AMQ-3682 | Karaf commands should try using --jmxlocal by default |
| AMQ-3683 | Enhance the InactivityMonitor shutdown logic |
| AMQ-3696 | Slave broker cannot be stopped in a JDBC Master/Slave configuration within OSGi |
| AMQ-3703 | Replace use of class Valve with standard JDK ReentrantReadWriteLock in class Topic |
| AMQ-3705 | When a destination is removed all the advisory topics for that destination should also be removed |
| AMQ-3714 | getScheduler():Scheduler of class org.apache.activemq.ActiveMQConnection should use lazy initialisation |
| AMQ-3718 | Thread pool turnover is to heavy due to Executor configuration |
| AMQ-3750 | Add a hint when storing a message so a message store can optimise message storage if the message is likely to be consumed quickly |
| AMQ-3770 | Generalize LDAP group processing / LDAP group expansion |
| AMQ-3772 | Add levelDB store support to Fuse MQ Enterprise |
| AMQ-3786 | Add support for MQTT |
| AMQ-3788 | getStatus on ActiveMQConnectionFactory is not implemented |
| AMQ-3813 | Limit the number of producers and consumers created by a Connection |
| AMQ-3847 | Optional import for org.apache.activemq.pool in activemq-camel should be required |
| AMQ-3859 | Too tight version range in activemq features file |
| AMQ-3861 | Offer a way to not set a transaction manager in activemq-camel |
| AMQ-3878 | Reset stats automatically without dependency on JMX / Java APIs |
| AMQ-3893 | Adjust topic policy entry in default configuration |
| AMQ-3913 | Stomp Spec allows for stomp headers to have spaces in key or value we currently trim |
| AMQ-3914 | Add support for MS SQL JDBC driver 4.0 |
| AMQ-3971 | Remove System.out.println from ActiveMQConnection |
| AMQ-3972 | Add an isDisposed check before calling propagateFailureToExceptionListener in FailoverTransport |
| AMQ-3983 | Fix OSGi dependency |
| AMQ-3986 | Allow optimizeDurableTopicPrefetch to be set using resource adapter properties |
| AMQ-3991 | Output version number in started log line to be consistent |
| AMQ-4003 | Add option to PooledConnectionFactory to control if connection should be created on start-up or not |
| AMQ-4004 | activemq-pool - Rename maximumActive option maximumActiveSessionPerConnection |
| AMQ-4008 | Tomcat WARN on shutdown about ThreadLocal not cleared from log4j |
| AMQ-4011 | Refactor IntrospectionSupport to avoid using Java bean property editors |
| AMQ-4012 | Use english locale for introspection support when discovering setter/getter method names |
| AMQ-4015 | Add uptime to broker mbean and when stopping broker to report its uptime |
| AMQ-4016 | Seems like static thread pool is not used in org.apache.activemq.ActiveMQConnectionFactory |
| AMQ-4019 | Make better use of commons-pool in activemq-pool |
| AMQ-4026 | Refactor logic to shutdown thread pools using a single API to ensure better shutdown and offer logging et all |
| AMQ-4027 | Add support for Java 7 in AbstractJmxCommand |
| AMQ-4029 | Unregistering mbean should handle null mbean names |
| AMQ-4049 | Polish the start|stop logging |
| AMQ-4063 | Trim RAR to not included Derby JAR |
| AMQ-4067 | Prefix Thread names with ActiveMQ |
| AMQ-4177 | browseMessages() fails when using Jolokia to browse JMX |
| AMQ-1928 | Limit the maximum number of connections to a broker |
| AMQ-2455 | Need a facility to retry JMS connections to a foreign provider by the ActiveMQ JMS bridge |
| AMQ-2570 | Apache Karaf support |
| AMQ-3236 | In the case of DLQ processing due to an exception from onMessage, provide the exception string as a message property |
| AMQ-3298 | Cannot create bridge to WebSphere queue using default messaging provider |
| AMQ-3623 | Add DefaultTestAppender utility abstract class |
| AMQ-3632 | Allow easy creation of purely static bridges |
| AMQ-3769 | Support doing non-blocking sends that uses an async callback that gets notified when the send has been received by the broker |
| AMQ-3917 | Apache ActiveMQ should support multiple durable subscriptions per Stomp client |
| AMQ-4005 | Implement pluggable broker lockers |
| AMQ-4162 | Provide JMX visibility into options applied via destination name query parameters |
| MB-1031 | Contention on a mutex during a stress when using SimpleAuthenticationPlugin |
| MB-1077 | Improve failover clustering so we can better support active-active setups |
| MB-1092 | Add troubleshooting,diagnostic script to capture commonly needed broker runtime environment data |
| MB-1094 | Add authenticated username info in ConnectionViewMBean and SubscriptionViewMBean |
| MB-1103 | activemq feature.xml use old org.apache.aries.transaction.manager bundle cause intermittent hang on some platform |
| MB-1128 | ActiveMQ dynamic failover randomizes client connect string causing imbalance |
| MB-1145 | Incorrect paths used in wrapper.conf |
| MB-1150 | Create a wrapper for use in a 64bit environment |
| MB-1155 | The broker's message group feature should rebalance the message distribution when new consumers added |
| MB-1156 | Add support for lease based lock to jdbc persistent adapter |
| MB-1157 | Support for more sophisticated redelivery semantics |
| MB-1158 | Support for secure websockets transport connector |
| MB-1187 | Allow REST API to connect to the secured broker |
| MB-1188 | REST API support for application/json as content type |
| MB-1193 | Allow compression of messages across network of brokers |
| MB-1195 | Reduce maxRows default value from 10,000 to a lower value like 200 in JDBC persistence adapter |
| MB-1210 | Websocket transport: support increasing the max size of websocket messages |
| MB-1219 | Enable IndividualDeadLetterStrategy to be able to use a suffix option |
| MB-707 | Distribute a 64-bit version of Java Service Wrapper |
| MB-844 | Please add the user name in the "User name or password is invalid" error line |
| MB-848 | Please enhance STOMP message logging so that only STOMP Frames may be redirected to another file |
| MB-887 | Implement nio+ssl transport |
| MB-896 | Pooled connections causes Temporary Destination leaks since connections don't get closed |
| MB-902 | Broker does not check for expired persistent topic messages |
| MB-911 | Exposing subscription statistics through Statistics plug-in |
| MB-930 | Guard debug logging in message expiry task in AcitveMQ to avoid unnecessary loading the messages into memory |
| MB-942 | Update activemq-admin usage to include info on how to change JMX access |
| MB-943 | Confusion around discoveryAgent - Rendez-Vous |
| MB-952 | Fuse MQ Enterprise cannot determine between Queue and Topic for Weblogic destination |
| MB-969 | Change prefetch size limit for topics from 32766 to 32767 |
| MB-973 | The rar distribution is missing the slf4j-log4j jar file |
| MB-975 | Upgrade our http transport implementation from using HttpCommon v3.1 to HttpCore/HttpClient v4.x |
| MB-984 | Improve ActiveMQ's XSD to allow elements to appear in any order |
| MB-986 | Add IP address of clients to ERROR messages created within transport layer |
| MB-988 | Enhance HTTP transport connector to support message compression |
| MB-994 | Exclude network connectors from sendFailIfNoSpace on producer flow control |
| MB-995 | Added masterslave configuration for networkConnectors to simplify master/slave pair configuration |
| MB-1022 | Please create an inactivity monitor on STOMP 1.0 |
| MB-1076 | Add ability to do priority failover and fallback, using the backup facility in the Failover transport |
| MB-859 | Add support for wildcards for LDAP authorization map |
| MB-905 | Durable subscribers that are disconnected and haven't tried connecting for some time could get unsubscribed automatically |
| MB-920 | Add ability for KahaDB log files to be created on a per-destination basis |
| MB-962 | Please add support for JMS option consumer.exclusive |
| MB-967 | Broker to persist JMSRedelivered flag |
| MB-990 | Allow virtual topic interceptor to ignore messages that are received over network connector |
Table 5.2 lists the enhancements between 7.0.2 and 7.1.
Table 5.2. Container Enhancements in 7.1
| Enhancement | Description |
|---|---|
| ARIES-315 | Blueprint-cm and the cm-properties element |
| ARIES-467 | Internationalization of Apache Aries |
| ARIES-542 | Use of PlatformRepository in resolvers needs to be more flexible |
| ARIES-545 | Modelling classes are missing equals() methods |
| ARIES-557 | Resolver exception should include more information about nature of missing requirements |
| ARIES-567 | Create common utility method for service unregistration |
| ARIES-574 | Expose ModelledBundleResource |
| ARIES-581 | Provide a java6 parent |
| ARIES-583 | Update the application components to use the ext:default capability for default service implementations |
| ARIES-601 | Add service ranking to re-registered XA data source |
| ARIES-638 | Logging improvements in AriesApplicationManagerImpl |
| ARIES-649 | Move ServicePair from jndi to util so it can be used more widely |
| ARIES-652 | Improvements to IFile API |
| ARIES-657 | Enhanced support for custom scopes |
| ARIES-671 | Proxy code memory usage is high for generated interface proxys |
| ARIES-676 | Make Aries bundle modelling API consumable by non-OSGi clients |
| ARIES-686 | Implement the JMX spec MBeans using the whiteboard pattern |
| ARIES-701 | Use IdentityHashMap<Object,MBeanHolder> to map registered services to MBeanHolders |
| ARIES-702 | Use introspection to find the MBean interface |
| ARIES-713 | Support using a ScheduledExecutorService for blueprint that is in the service registry |
| ARIES-715 | Add support for InputStream based IDirectory |
| ARIES-716 | Allow plugins to extend the Aries Application Modeller |
| ARIES-722 | Enabling debug for blueprint itests is too hard |
| ARIES-740 | Add method to resolve without repositories to AriesApplicationResolver |
| ARIES-741 | JPA container should auto-enlist JTA XADatasources |
| ARIES-779 | AbstractPropertyPlaceHolder should be exported by blueprint-core |
| ARIES-786 | Ability to control the list of woven classes using system properties |
| ARIES-790 | Add a public API for injecting properties into a pre-created object |
| ARIES-792 | Add EJB Modeller code to the Standalone Application Modeller |
| ARIES-806 | Align Bundle-Name of the JMX Whiteboard bundle with other JMX bundles |
| ARIES-821 | Allow mixtures of interfaces and classes in proxys |
| ARIES-823 | Cope with badly written ObjectFactorys |
| ARIES-826 | Provide a hook into the proxy weaver to enable smart decision making |
| ARIES-837 | Modify default of Export-EJB: header to be ALL when empty string |
| ARIES-845 | Support unwrap and isWrappedFor functions with older JDBC drivers in ConnectionWrapper |
| ARIES-855 | Blueprint should attempt to load static nested classes when the initial attempt to load a class has failed |
| ARIES-873 | Allow transactionManager Identity to be specified via configuration aries.transaction.tmid=MyUniqueId |
| ARIES-536 | Have a way to specify a blueprint bundle should be started in sync with the start level service as much as possible |
| ARIES-578 | Provide hook point for different Blueprint transaction interceptor similar to JPA hook point for persistence units |
| ARIES-633 | Improve proxy support for final classes and final methods |
| ARIES-636 | Support load-time weaving and Annotation scanning in the JPA container when running on OSGi 4.3 |
| ARIES-644 | Replace Scope Admin with Region Digraph |
| ARIES-718 | EJB support in Apache Aries |
| ARIES-727 | support syntax : ${a+b} in blueprint-cm |
| ARIES-732 | The ability to exclude bundles from the archive while still having them listed in Application-Content header |
| ARIES-733 | Add Use-Bundle header to the APPLICATION.MF using maven-eba-plugin |
| ARIES-737 | Provide initial support for embedded subsystems |
| ARIES-739 | Update code based on latest resource, resolver, repository, and subsystem APIs |
| ARIES-757 | Contribute semantic versioning check tool |
| ARIES-773 | Usage of a Configuration Admin service within an isolated application framework |
| ARIES-825 | Update subsystems to latest Subsystem, Resolver, and Repository APIs |
| ARIES-888 | Add a bundle to support JMS with the transaction manager |
| ARIES-890 | Add support for recovery of JDBC XA transactions |
| ESB-1657 | Add schema definition support for Spring/Blueprint deployer |
| FELIX-908 | Unsynchronize access to bundle state inside BundleInfo by making the variable volatile |
| KARAF-1010 | Add 64Bit service wrapper |
| KARAF-1023 | Add karaf activators for jars in the lib folder |
| KARAF-1045 | Improved help system |
| KARAF-1072 | Provide man command as an alias to help |
| KARAF-1129 | Allow configuring rmi Registry host as well as port |
| KARAF-1153 | Jetty feature should also install the jetty-websocket bundle |
| KARAF-1191 | Switch back to milliseconds per default on shell:sleep and introduce -s option |
| KARAF-1245 | Blueprint deployer and Spring deployer should get started before features.core bundle |
| KARAF-1261 | JAAS commands should allow you to distinguish between to realms that have the same name |
| KARAF-1271 | Feature service should log in DEBUG instead of INFO |
| KARAF-1280 | Add wrap third party jar example |
| KARAF-1283 | Add a simple OSGi bundle demo to deployer examples |
| KARAF-1292 | Add a feature demo |
| KARAF-1295 | serviceUrl in org.apache.karaf.management.cfg should use 0.0.0.0 but not localhost |
| KARAF-1300 | Features management should be more robust if customer features descriptor file has duplicated feature name |
| KARAF-1328 | jclouds feature repo url has been changed after version 1.0 |
| KARAF-1385 | Be able to disable the default PropertiesLoginModule |
| KARAF-1396 | config:list command description should be enhanced |
| KARAF-1410 | Error in stop script if KARAF_DEBUG is enabled |
| KARAF-1499 | InfoAction shell command should sort the properties from InfoProvider instances |
| KARAF-1500 | Forgot a space between hours and minutes in InfoAction.java |
| KARAF-1521 | add-features-to-repo goal should define a correct default value for repository |
| KARAF-1558 | Instance clone should be able to clone the root instance |
| KARAF-1562 | Improve message displayed when the JAAS login module doesn't have a backing engine |
| KARAF-1574 | When two karaf containers are started locally, an exception is displayed at startup. A nicer message would be better. |
| KARAF-1575 | Features provided by Apache Karaf do not have any description |
| KARAF-1586 | wrapper:install command should be usable outside OSGi too |
| KARAF-1600 | Avoid duplicate feature and bundle resolution when installing cascading features |
| KARAF-1640 | Make sure the local console is fully working before the user can type commands |
| KARAF-1657 | org.ops4j.pax.url.mvn.proxySupport=false |
| KARAF-1676 | OBR URL's in Apache Karaf have no simple identifier |
| KARAF-1693 | Rename command-watch to watch |
| KARAF-1749 | The command packages:imports should work on unresolved bundles |
| KARAF-1752 | Hard coded features uri in features deployer feature discovery |
| KARAF-1757 | Welcome message incorrect during ssh session or using bin/client |
| KARAF-1810 | Provide alias for feature:repo-add |
| KARAF-1812 | Use Felix properties and remove org.apache.karaf.util.Properties |
| KARAF-1813 | Add osgi:name and name attribute in SystemMBean |
| KARAF-1833 | Reintroduce the -p option in the client |
| KARAF-1834 | Make KarafTestSupport available externally |
| KARAF-1836 | Provide a login module class name completer |
| KARAF-1844 | Add command aliases for migration purpose between 2.3.x and 3.x |
| KARAF-1850 | feature:list should use alphabetical order |
| KARAF-1878 | Feature bundle start up order by startLvl |
| KARAF-1924 | Fix the WARN logs from starting a vanilla Karaf 2.3.0 |
| KARAF-1951 | Remove workaround for KARAF-1117 |
| KARAF-447 | Add JDBC lock implementation for PostgreSQL |
| KARAF-693 | features:addurl raises "Premature end of file" when network is not available |
| KARAF-916 | Use org.apache.aries.jmx.core instead of org.apache.aries.jmx |
| KARAF-999 | local-repo folder shouldn't be used |
| KARAF-1132 | Introduce new command feature:chooseurl to make it easy to install well known feature files |
| KARAF-1196 | Implement a watch command so we can watch the output of a karaf command like the unix 'watch' mechanism |
| KARAF-1334 | Use the new servicemix spec to allow the use of both the JRE implementations and implementations from bundles |
| KARAF-1475 | Support SSH agent forwarding and use the agent authentication when connecting to other instances |
| KARAF-1546 | Add -i/--install-all option to feature:add-url |
| KARAF-1792 | Add karaf-pax-exam |
| KARAF-1806 | Add version attribute in the SystemMBean |
| KARAF-1910 | Provide Spring 3.1.2.RELEASE features |
| KARAF-32 | Support ssh public key authentication and agent forwarding |
| KARAF-581 | Also make rmiRegistryHost configurable |
| KARAF-866 | New dev:wait-for-service command to wait for a given OSGi service |
| KARAF-908 | Provide a way to access system properties easily in the shell |
| KARAF-977 | config propset, propappend & propdel could use some autocompletion |
Table 5.3 lists the enhancements between 7.0.2 and 7.1.
Table 5.3. Fabric Enhancements in 7.1
| Enhancement | Description |
|---|---|
| FABRIC-255 | Allow configuration of default JVM options that can be applied to new child containers |
| FABRIC-256 | Provide fabric commands to list and display OSGi features |
| FABRIC-260 | Resolver handling needs to be more flexible and configurable |
| FABRIC-271 | Fabric dosgi should respect the container resolver |
| FABRIC-284 | Ensure that features in a profile are deployed before bundles |
| FABRIC-296 | Provide a Fabric profile out-of-the-box that deploys all relevant Camel JMS and ActiveMQ features/bundles |
| FABRIC-314 | Remove container-create command |
| FABRIC-329 | Secure jolokia |
| FABRIC-281 | Secure ZooKeeper |
| FABRIC-289 | Add support for deploying Apache Directory in Fabric |
| FABRIC-316 | Make sure that no default credentials and no default key are present in the distros |