[EJB 3.0] - Lazy EJB3.1 timerservice deployment starting JBoss AS 6.0.0.M5
by jaikiran pai
jaikiran pai [http://community.jboss.org/people/jaikiran] created the document:
"Lazy EJB3.1 timerservice deployment starting JBoss AS 6.0.0.M5"
To view the document, visit: http://community.jboss.org/docs/DOC-15884
--------------------------------------------------------------
h5. Background:
EJB3.1 timerservice support was introduced in AS 6.0.0.M4 http://community.jboss.org/docs/DOC-15643 http://community.jboss.org/wiki/EJB31inJBossAS600M4. The implementation is based on JPA (Hibernate as the provider in JBoss AS). This added around 3-4 second increase in the boot time of the JBoss AS server, due the initialization involved for deploying the timerservice jar. Since the timerservice was only applicable for EJB3.x deployments, it did not make sense to increase the default boot time if the server doesn't have any EJB3.x deployments. Hence we decided to "lazily" deploy the timerservice.
h5. Forum discussion:
http://community.jboss.org/thread/155800 http://community.jboss.org/thread/155800
h5. Details:
Starting JBoss AS 6.0.0.M5, which was released recently http://community.jboss.org/blogs/donnamishelly/2010/09/24/jboss-as-600m5-... http://community.jboss.org/blogs/donnamishelly/2010/09/24/jboss-as-600m5-..., the jboss-ejb3-timerservice-mk2.jar now resides in JBOSS_HOME/common/deploy folder. This jar will be deployed lazily by the server. The server will deploy this jar only when the first EJB3.x deployment is made available in the server. By default, JBoss AS doesn't ship any EJB3.x deployments and hence the lazy deployment of timerservice jar saves a few seconds of the server boot time.
h5. How to disable the "lazy" timerservice deployment:
If users want to disable the "lazy" deployment of timerservice and instead deploy it always, irrespective of the presence of an EJB3.x deployment, then follow the steps mentioned below:
* Move (cut/paste) jboss-ejb3-timerservice-mk2.jar from JBOSS_HOME/common/deploy to JBOSS_HOME/server/< servername>/deploy folder. Ex: Move it to JBOSS_HOME/server/default/deploy folder, if you use the "default" server config.
* Edit the JBOSS_HOME/server/< servername>/deployers/ejb3.deployer/META-INF/ejb3-as-deployers-jboss-beans.xml and comment out (or remove) the following MC bean configuration:
<bean name="EJB3MetadataOnDemandDeploymentDeployer" class="org.jboss.ejb3.deployers.EJB3MetadataOnDemandDeploymentDeployer">
<property name="profileService"><inject bean="jboss.profileservice:service=ProfileService"/></property>
<!-- Build a profile from the contents of this single URI -->
<property name="deploymentRoot">${jboss.common.base.url}deploy</property>
<!-- We just have a single on-demand deployment - the jboss-ejb3-timerservice-mk2.jar
Note: If there are multiple deployments which need to be deployed on-demand, then
set the "deploymentNames" collection property *instead of* "singleDeployment"
property
-->
<property name="singleDeployment">jboss-ejb3-timerservice-mk2.jar</property>
<!--
Whether activation of the profile (i.e. deployment of the URI contents)
should be deferred until the first EJB3.x deployment (true) or done as part of
the start of this bean (false).
WARNING: This configuration option may be altered in a subsequent AS 6.0
milestone release.
FIXME: https://jira.jboss.org/jira/browse/JBAS-7714
-->
<property name="activateOnDemand">${jboss.as.deployment.ondemand:true}</property>
</bean>
h5.
Issues/questions:
If you have any related issues or questions, please report/ask them in our user forum here http://community.jboss.org/community/ejb3 http://community.jboss.org/community/ejb3?view=discussions
--------------------------------------------------------------
Comment by going to Community
[http://community.jboss.org/docs/DOC-15884]
Create a new document in EJB 3.0 at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=102&co...]
15 years, 7 months
[JBoss Tools] - SNMP monitoring of MBeans (attributes.xml in snmp-adaptor.sar)
by Evan Homan
Evan Homan [http://community.jboss.org/people/ephoman] created the discussion
"SNMP monitoring of MBeans (attributes.xml in snmp-adaptor.sar)"
To view the discussion, visit: http://community.jboss.org/message/563621#563621
--------------------------------------------------------------
I want to monitor some attributes of seveal MBeans that are running on my system:
I have configured my attributes.xml unders snmp-adaptor.sar to include:
<mbean name="jboss.ha:service=HASingletonDeployer">
<attribute name="MasterNode" oid=".1.2.3.4.1.22"/>
<attribute name="PartitionName" oid=".1.2.3.4.1.23"/>
<attribute name="TargetStopMethodArgument" oid=".1.2.3.4.1.24"/>
<attribute name="TargetName" oid=".1.2.3.4.1.25"/>
<attribute name="State" oid=".1.2.3.4.1.26"/>
<attribute name="StateString" oid=".1.2.3.4.1.27"/>
<attribute name="ClusterPartition" oid=".1.2.3.4.1.28"/>
</mbean>
But with my MIB browser I can only successfully do a get() on String or Int attributes. Boolean or objects will return an SNMP error. So, the adaptor is not even "publishing" the OID for those cases.
For my above list, MasterNode, TargetName, and ClusterPartition fail on SNMP get(), the rest are successful.
*Any workaround for this?*
>From the JMX console for org.jboss.ha.singleton.HASingletonController:
TargetName javax.management.ObjectName
StateString java.lang.String
MasterNode boolean
ClusterPartition org.jboss.ha.framework.server.ClusterPartitionMBean
TargetStartMethod java.lang.String
TargetStartMethodArgument java.lang.String
State int
TargetStopMethodArgument java.lang.String
PartitionName java.lang.String
(among others)
--------------------------------------------------------------
Reply to this message by going to Community
[http://community.jboss.org/message/563621#563621]
Start a new discussion in JBoss Tools at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&cont...]
15 years, 7 months
[JBoss Web Services] - JBossWS fetches the WSDL 4 times for every WS call
by Alan Feng
Alan Feng [http://community.jboss.org/people/alllle] created the discussion
"JBossWS fetches the WSDL 4 times for every WS call"
To view the discussion, visit: http://community.jboss.org/message/563620#563620
--------------------------------------------------------------
I generated the client JAX-WS stub code to consume a remote SOAP service. When invoking the service, I noticed JBossWS seems to make lots of HTTP GET calls to retrieve the WSDL files.
What I did was calling getPort() to get the service object, then invoke the operation repeatedly on this service object. What I found out is:
- For the first call: there are 4 HTTP GET to retrieve the same WSDL before the actual SOAP POST.
- Each subsequent call: there is 1 HTTP GET to retrieve the same WSDL before the actual SOAP POST.
These excessive HTTP GET for the same WSDL certainly seems less optimal. Performance is degraged 300% for the first call and 100% for each subsequent call. Does anyone know how to tune this behavior so it only retrieves the WSDL once per service object? Has this been reported before?
BTW, I'm using JBossWS Native 3.1.1
--------------------------------------------------------------
Reply to this message by going to Community
[http://community.jboss.org/message/563620#563620]
Start a new discussion in JBoss Web Services at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&cont...]
15 years, 7 months