[JBoss JIRA] Created: (EJBTHREE-707) TreeCacheProviderHook.isMinimalPutsEnabledByDefault() wrong
by Owen Taylor (JIRA)
TreeCacheProviderHook.isMinimalPutsEnabledByDefault() wrong
-----------------------------------------------------------
Key: EJBTHREE-707
URL: http://jira.jboss.com/jira/browse/EJBTHREE-707
Project: EJB 3.0
Issue Type: Bug
Reporter: Owen Taylor
Priority: Minor
org.jboss.ejb3.entity.TreeCacheProviderHook.isMinimalPutsEnabledByDefault() returns false,
which means "don't check to see if values are in the cache before inserting them again", but
that's a very bad setting for the TreeCache
- It causes unnecessary replication between the nodes of a cluster
- It tends to cause lock conflicts because the transaction putting data
into the cache has to get a (briefly) get a write lock. There are hacky workarounds in the
hibernate TreeCache code not to deadlock in this code, but you still get log spew.
The TreeCacheProvider provided with Hibernate (no JMX integration) returns true
isMinimalPutsEnabledByDefault() as it should, so I think this is just an oversight.
You can of course easily work around the problem by setting the value explicitly in the
hibernate properties.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
19 years, 3 months
[JBoss JIRA] Created: (EJBTHREE-768) MDB deployment error
by Ramil Israfilov (JIRA)
MDB deployment error
--------------------
Key: EJBTHREE-768
URL: http://jira.jboss.com/jira/browse/EJBTHREE-768
Project: EJB 3.0
Issue Type: Bug
Affects Versions: EJB 3.0 RC9 - FD
Environment: JDK1.5.0_06, UNIX and windows platforms
Reporter: Ramil Israfilov
Fix For: EJB 3.0 RC10 - FD
I have an MDB which is defined like that
import javax.jms.MessageListener;
@MessageDriven(name = "EJBExecutorMDB", activationConfig = {
@ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Queue"),
@ActivationConfigProperty(propertyName = "destination", propertyValue = "queue/ExecutorQueue"),
@ActivationConfigProperty(propertyName = "acknowledgeMode", propertyValue = "AUTO_ACKNOWLEDGE"),
@ActivationConfigProperty(propertyName = "maxSession", propertyValue = "4"),
@ActivationConfigProperty(propertyName = "SubscriptionDurability", propertyValue = "Durable") })
public class EJBExecutorMDB implements MessageListener {
....
It works perfect during in JBOSS, but then I run it in JUNIT it fails with exception: "unable to determine messagingType interface for MDB"
Only one difference that in JUNIT test I instrument built classes using cobertura - in that case my class implements two interfaces: MessageListener and cobertura interface.
After looking in source code I found in org.jboss.ejb3.mdb.MDB:
if (messagingType.getName().equals(Object.class.getName()))
{
ArrayList<Class> list = ProxyFactoryHelper.getBusinessInterfaces(clazz);
if (list.size() > 1 || list.size() == 0) throw new RuntimeException("unable to determine messagingType interface for MDB");
messagingType = list.get(0);
}
Why such a dummy check is done ??? Why class must implement one and only one interface ??
could you check superclasses and allow multiple interfaces implementations on the class.
Also on the link to forum people has similar problem: they don't implement interface, but extend superclass. And they got the same exception.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
19 years, 3 months
[JBoss JIRA] Created: (JGRP-274) Don't bind to a NIC if bind address is not set
by Bela Ban (JIRA)
Don't bind to a NIC if bind address is not set
----------------------------------------------
Key: JGRP-274
URL: http://jira.jboss.com/jira/browse/JGRP-274
Project: JGroups
Issue Type: Feature Request
Affects Versions: 2.3 SP1, 2.3, 2.2.9 SP3 (2.2.9.3), 2.2.9.2, 2.2.9.1, 2.2.9, 2.2.8, 2.4
Reporter: Bela Ban
Assigned To: Bela Ban
Fix For: 2.5
If -Dbind.address or bind_addr are not set, JGroups picks the NIC to bind sockets to itself. However, especially for ServerSockets, this may not be desirable because we may want to have ServerSockets be able to receive packets through all interfaces, e.g.
- NICs are 192.168.5.2, 192.168.0.2 and 127.0.0.1 (loopback)
- When the bind address is set to 192.168.5.2, a given ServerSocket on port 7500 will *only accept packets from this NIC*
- If someone connects to 192.168.0.2:7500 or 127.0.0.1:7500, the client will not be able to establish a connection because nobody is listening on those ports on the given NICs
- If bind address was not set, this would be possible
- Affected: FD_SOCK, FD_PING, TCP, TCP_NIO etc
- We need to think about semantics for MulticastSockets where a wildcard address (not setting the bind address) means that the operating system picks the NIC, and *not* that the MulticastSocket will listen on all interfaces for incoming packets
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
19 years, 3 months
[JBoss JIRA] Created: (JBAS-3431) AuthorizationInterceptor throwing ArrayIndexOutOfBoundsException
by Anil Saldhana (JIRA)
AuthorizationInterceptor throwing ArrayIndexOutOfBoundsException
----------------------------------------------------------------
Key: JBAS-3431
URL: http://jira.jboss.com/jira/browse/JBAS-3431
Project: JBoss Application Server
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: JMX, Security
Affects Versions: JBossAS-4.0.4.GA
Reporter: Anil Saldhana
Assigned To: Anil Saldhana
Fix For: JBossAS-5.0.0.Beta, JBossAS-4.0.5.CR1
As Originally reported in JBJMX-97, the user says:
==========================================================================================
I have secured the jmx-invoker-service using JAAS and the standard UsersRolesLoginModule. I am able to authenticate (basic authentication) through the web UI and manage the console using the same login config.
I am getting a remote connection to the JMX server from an InitialContext that is populated with the user name and password:
env.put(Context.SECURITY_PRINCIPAL, userName);
env.put(Context.SECURITY_CREDENTIALS, password);
Then I look up the MBeanServerConnection and try to get the MBeanInfo
MBeanServerConnection server = lookup("jmx/invoker/RMIAdaptor", MBeanServerConnection.class);
ObjectName name = new ObjectName(theName);
MBeanInfo info = server.getMBeanInfo(name);
At this point the server throws an ArrayIndexOutOfBoundsException from org.jboss.jmx.connector.invoker.AuthorizationInterceptor line 107.
If I try and set an attribute:
server.setAttribute(name, new Attribute("searchText", searchText));
I get instead at the same line:
java.lang.ClassCastException: javax.management.Attribute
at org.jboss.jmx.connector.invoker.AuthorizationInterceptor.invoke(AuthorizationInterceptor.java:107)
at org.jboss.jmx.connector.invoker.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:108)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
==========================================================================================
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
19 years, 3 months