Comments (10)
Reported by abien
from ejb-spec.
jlmonteiro said:
As already discussed, that'd be great.
Just not sure if we have to create a new annotation or if we can ask JSR 255 spec lead or members, if they can release.
Thoughts?
Jean-Louis
from ejb-spec.
benoitf said:
Except that we couldn't have attributes for SLSB, it could be interesting to expose the SLSB method as JMX operations
from ejb-spec.
mvatkina said:
(Unfortunately) I'm closing this issue for the following reasons:
-
JMX usage is declining with the REST APIs being used instead. If the REST related improvements or integration points need to be addressed, let's start a separate discussion.
-
Even if there is still enough interest in the JMX improvements, any changes to the JMX support should be done across the platform, rather than in a piecemeal fashion in a subset of technologies (even worse, only in one), i.e. it would be at minimum very confusing to the users, if the EJB container provides some special JMX handling that is not available in any other technology. Anybody interested in driving the effort of adding new features to the JMX or the JMX/EE integration would need to start a new JSR for a revision of the JMX spec.
from ejb-spec.
rherschke said:
Maybe we can have at least a @resource injection of the platformmbeanserver instead?
So one can implement an interceptor with @AroundConstruct to do the registration.
This would pass the rule of separating concerns and will get a clear EJB Pojo as well.
Example:
@Inherited
@InterceptorBinding
@Target({TYPE}) @Retention(RUNTIME) public @interface MBean {
@NotBinding String value() default "";
}
@Interceptor @MBean
public class MBeanInterceptor {
@Resource
MBeanServer server;
@PostConstruct
public void registerBean(InvocationContext ctx) {
ctx.proceed();
ObjectName on = ... // get objectname from annotation value
server.register(on, ctx.getTarget());
// or do the neccessary DynamicMBean work here...
}
@PreDestroy
public void unregister(InvocationContext ctx) {
ObjectName on = ... // get objectname from annotation
server.unregister(on);
ctx.proceed();
}
}
@Singleton @Startup @MBean("com.example:type=MyMXBean")
public class MyMXBean {
// ... }
So with @resource injection, this will work even on appservers with its own MBeanServer, not only with JVM PlatformServer, but the developer do not care about this.
Next, @resource injection could be used also in a normal EJB to do some client work (observe notifications, get attributes aso.) with a registered mbean without the need to distinguish about the right MBeanServer to be used.
from ejb-spec.
mvatkina said:
This functionality, if available, should not be limited to the EJBs ("any changes to the JMX support should be done across the platform"), correct? If so, I suggest to open the request in the javaee-spec project.
from ejb-spec.
rherschke said:
@marina, you're right.
see: http://java.net/jira/browse/JAVAEE_SPEC-21
from ejb-spec.
Was assigned to mvatkina
from ejb-spec.
This issue was imported from java.net JIRA EJB_SPEC-32
from ejb-spec.
Marked as won't fix on Tuesday, July 10th 2012, 6:04:28 pm
from ejb-spec.
Related Issues (20)
- Add pause() and resume() to TimerService HOT 2
- Spec bug regarding tx attributes for timeout methods HOT 2
- Allowing business interface inheritance HOT 2
- Update project lead in JIRA HOT 13
- Clarification whether persistent timers have to survive redeployment / undeployment HOT 7
- AccessTimeout(0) changes locking behaviour in a non intuitive manner HOT 8
- clarify ThreadLocal usage in ejb environment HOT 12
- Explicitly allow Java 8 default methods as business methods HOT 3
- Incorrect description/examples for interceptor-binding DD element HOT 3
- Allow listener method to always be determined at runtime by resource adapter HOT 6
- Define a standard way to specify the resource adapter used by a JMS MDB HOT 4
- Annotation-based Bean-Pool Configuration HOT 2
- Annotation-based Transaction Timeout Configuration HOT 5
- Identity scheduled for removal HOT 3
- Typo in bind of interceptors HOT 2
- EJB RMI-IIOP over HTIOP(Http2 or WebSocket) HOT 2
- clarify ManagedExecutorService task execution allowance in @PostConstruct method for @Startup Singleton Session Bean HOT 9
- EJB 3.2 spec section 14.2 Enterprise bean's name needs clarification HOT 1
- evaluate Java EE 7 spec section 5.2.2 for possible clarification in relation to EJB 3.2 spec portable JNDI lookup
- EJBContext.getCallerIdentity should be removed HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ejb-spec.