[Design of JCA on JBoss] - Re: JBAS-3321 - TransactionTimeout from EJB container
by adrian@jboss.org
"weston.price(a)jboss.com" wrote :
| Why?
|
Because your solution is not generic. It only works for the JBoss/JMS resource adapter.
And it only works for JMS because there is only one delivery method
| javax.jms.MessageListener.onMessage(Message)
|
Put another way, your solution does not work in the following cases:
1) ActiveMQ's inbound resource adapter
2) Something that is not JMS
3) Something that has more than one delivery method in the listener interface.
To be generic, it must cater for the case where most inbound transactions
are started, this is in the MessageEndpoint, or more accurately in the
MessageEndpointInterceptor, the later being an implementation of JBoss.
It must also cater for inflow rars that have more than one listener method
or interfaces. That is why there is "java.lang.reflect.Method" on
the isDeliveryTransacted() callback.
The same should be true for the getTransactionTimeout() callback into the container.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4013657#4013657
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4013657
19 years, 1 month
[Design of JCA on JBoss] - Re: JBAS-3321 - TransactionTimeout from EJB container
by weston.price@jboss.com
anonymous wrote :
| The transaction timeout is not a property of the activation spec.
|
Why? I simply don't see the problem in the JMS/JCA adapter allowing for this.
anonymous wrote :
| It is a property of the MDB container which is represented in JCA land
| by the message endpoint factory (MEF).
|
Again, why? There is simply nothing in the JCA spec to suggest this.
anonymous wrote :
| What is required is a JBoss specific interface that the MEF implements
| that allows you to retrieve the transaction timeout for a method,
| i.e. similar to the isDeliveryTransacted(Method)
|
So, instead of using the ActivationSpec, you use the MEF. The property is the same, you are just getting it from somewhere else. We have plenty of JBoss specific properties in our ActivationSpec, I see no need to subclass the MEF to simply pass as integer.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4013649#4013649
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4013649
19 years, 1 month
[TODO - DEVELOPMENT] - Re: Recursion in rules execution
by vivonpereira
You have to be very careful while using the 'OR' condition (||) in the JBoss rules.
In the documentation that the JBoss have provided, they do mention that, every OR will be treated as a seperate sub-rule by itself.
Hence, if u have a rule like this: condition1 || condition2, then the result is going to be executed twice for the two specified conditions.
Hence, i recommend u judiciously use the or condition.
Bcoz, if u have a condition like the one below, then the result would be totally wrong:
rule test
when
t:Test(age > 25 || skill == 'IT')
then
t.setWage(t.getWage() * 1000);
end
The result should have been 1000 but it would give 1000000.
There is one more point I have noticed in ur rule file is that, there are more than one rule containing modify method. When I wrote my rule file, it did not allow me to have more than one non-exclusive rule to have a modify method.
Could u tell me, didnt it throw u any error. Since it hangs my code when it finds two rules having modify method in the same drl file.
The java code is the same as urs.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4013647#4013647
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4013647
19 years, 1 month
[Design of JCA on JBoss] - Re: JBAS-3321 - TransactionTimeout from EJB container
by adrian@jboss.org
This goes back to what we discussed in Boston with the EJB3 team.
JCA should provide an abstract MessageEndpointFactory implementation
with "abstract" methods that containers can implement when they subclass.
The relevant callbacks would be:
| // From the spec
| public boolean isDeliveryTransacted(Method)
| {
| return false;
| }
|
| // Get the transaction timeout (the subject of feature request)
| public long getTransactionTimeout(Method)
| {
| return 0l;
| }
|
| // Does the container provide a context classloader
| // for switching during beforeDelivery
| public ClassLoader getClassLoader()
| {
| return null;
| }
|
In practice there should be two implementations provided by JCA
1) That uses the old interceptors/proxy factory from EJB2
2) That uses the aop interceptors for EJB3 and POJO
The MessageEndpointInterceptor(s) for each would be maintained by the JCA project.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4013619#4013619
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4013619
19 years, 1 month
[Design of JMX on JBoss (JBoss/JMX)] - Paramater changes impact on JBoss through JMX console or Twi
by mahendra_kutare
Hi,
I am using JBoss version 4.0.4 GA for my test run with JDK 1.5.0.10.
I would like to understand the following -
1) If i change the MaxPoolSize (Count of Server threads) attribute value using Pooled invoker configuration from JMX console or twiddle - then what will be the impact mechanism of this change ? i.e. a) Say for example i have initial value of MaxPoolSize as 50. I then increase it to 70 how and will JBoss behave ?
- Will it change the threads to 70 immediately, even if say the workload would not require more threads or it will wait till the workload requires more threads and then increase the count to 70 in this case ?
- Essentially what policy or algorithm does the JBoss application server uses if any parameter changes at container level or web server level in configuration files through JMX or twiddle ?
b) Say for example i have initial value of MaxPoolSize as 50. I then decrease it to 30 how and will JBoss behave internally ?
Similar question regarding JBoss behaviour as a)
Please do respond to this as my tests are related to changing the parameters and their impact, hence its imperative to know what policy or algorithm does JBoss uses internally on any changes through JMX console or twiddle. If any more information on my environment is required, i would be glad to put that across.
Regards
Mahendra
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4013613#4013613
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4013613
19 years, 1 month