[Remoting] - Re: Remoting2 - MC bean for SSL Connector
by ron.sigal@jboss.com
"jaikiran" wrote :
| But i don't see any test cases with that package in the AS5 testsuite. Maybe they have moved?
|
I created ServerConfiguration long before I put anything into AS, so probably that was figment of my imagination. Sorry about that. I'll update the ServerConfiguration javadoc. However, there is an actual example now in $JBOSS_HOME/server/default/deploy/remoting-jboss-beans.xml in AS5.
"jaikiran" wrote :
| Could someone please point me to some document where i can find a MC bean configuration for setting up a SSL connector equivalent to ... But the missing part is, the passing of keystore url and password to the bean.
|
The only thing the Connector bean needs to know about is the ServerSocketFactory. You could do something like:
| <bean name="DomainServerSocketFactoryService" class="org.jboss.remoting.security.domain.DomainServerSocketFactoryService">
| <annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss.remoting:service=ServerSocketFactory,type=SecurityDomainAdvanced",exposedInterface=org.jboss.remoting.security.domain.DomainServerSocketFactoryServiceMBean.class,registerDirectly=true)</annotation>
|
| <property name="SecurityDomain">java:/jaas/SSLAdvanced</property>
| <depends>JaasSecurityDomain</depends>
| </bean>
|
| <bean name="JaasSecurityDomain" class="org.jboss.security.plugins.JaasSecurityDomain">
| <constructor>
| <parameter>SSLAdvanced</parameter>
| </constructor>
| <property name="KeyStoreURL">localhost.keystore</property>
| <property name="KeyStorePass">opensource</property>
| </bean>
|
| <bean name="ServerConfiguration" class="org.jboss.remoting.ServerConfiguration">
| ...
| <property name="serverParameters">
| <map keyClass="java.lang.String" valueClass="java.lang.Object">
| <entry>
| <key>serverSocketFactory</key>
| <value>jboss.remoting:service=ServerSocketFactory,type=SecurityDomainAdvanced</value>
| </entry>
| </map>
| </property>
| ...
| </bean>
|
| <bean name="org.jboss.ejb3.RemotingConnector" class="org.jboss.remoting.transport.Connector">
| ...
| <property name="serverConfiguration">
| <inject bean="ServerConfiguration" />
| </property>
| ...
| </bean>
|
Note that I added an annotation to the "DomainServerSocketFactoryService" bean to turn it into an MBean. That's because "DomainServerSocketFactoryService" isn't really a ServerSocketInvoker, it just implements DomainServerSocketFactoryService, which *looks* like a ServerSocketFactory. Remoting's org.jboss.remoting.ServerInvoker will use the MBean name to get a reference to the MBean.
I think that should work, but let me know if there are any problems.
-Ron
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4206018#4206018
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4206018
15 years, 11 months
[JBoss Cache: Core Edition] - very strange behaviour of jboss cache 1.4.1
by bobbiee
Hello.
I am experiencing really strange problem here. When I start jboss, some entites are pre-loaded into cache. Then, if I load more and more entities in there, suddenly cache become empty and start all over - this causes dbs traffic of course.
On my local pc, if there are some nodes in the cache (sometimes 275, sometimes 900 it depends which operation I run), then cache gets suddenly clean, and when operation finish, the number of nodes in cache is 10 - and its only directories.
On production server this process repeats and repeats.
Could somebody help me to keep the nodes inside the cache bit longer??
Here is my configuration
<?xml version="1.0" encoding="UTF-8"?>
| <server>
|
| <!-- ==================================================================== -->
| <!-- Defines TreeCache configuration -->
| <!-- ==================================================================== -->
| <mbean code="org.jboss.cache.TreeCache" name="jboss.cache:service=EJB3EntityTreeCache">
| <depends>jboss:service=Naming</depends>
| <depends>jboss:service=TransactionManager</depends>
|
| <!-- Configure the TransactionManager -->
| <attribute name="TransactionManagerLookupClass">org.jboss.cache.JBossTransactionManagerLookup</attribute>
|
| <!--
| Node locking level : SERIALIZABLE
| REPEATABLE_READ (default)
| READ_COMMITTED
| READ_UNCOMMITTED
| NONE
| -->
| <attribute name="IsolationLevel">REPEATABLE_READ</attribute>
|
| <!-- Valid modes are LOCAL
| REPL_ASYNC
| REPL_SYNC
| -->
| <attribute name="CacheMode">REPL_SYNC</attribute>
|
| <!-- Name of cluster. Needs to be the same for all clusters, in order
| to find each other -->
| <attribute name="ClusterName">EJB3-entity-cache</attribute>
|
| <attribute name="ClusterConfig">
| <config>
| <!-- UDP: if you have a multihomed machine,
| set the bind_addr attribute to the appropriate NIC IP address
| -->
| <!-- UDP: On Windows machines, because of the media sense feature
| being broken with multicast (even after disabling media sense)
| set the loopback attribute to true
| -->
| <UDP mcast_addr="${jboss.partition.udpGroup:228.1.2.3}" mcast_port="43333" ip_ttl="2" ip_mcast="true"
| mcast_send_buf_size="150000" mcast_recv_buf_size="80000" ucast_send_buf_size="150000"
| ucast_recv_buf_size="80000" loopback="false" />
| <PING timeout="2000" num_initial_members="3" up_thread="false" down_thread="false" />
| <MERGE2 min_interval="10000" max_interval="20000" />
| <FD shun="true" up_thread="true" down_thread="true" />
| <VERIFY_SUSPECT timeout="1500" up_thread="false" down_thread="false" />
| <pbcast.NAKACK gc_lag="50" max_xmit_size="8192" retransmit_timeout="600,1200,2400,4800" up_thread="false"
| down_thread="false" />
| <UNICAST timeout="600,1200,2400" window_size="100" min_threshold="10" down_thread="false" />
| <pbcast.STABLE desired_avg_gossip="20000" up_thread="false" down_thread="false" />
| <FRAG frag_size="8192" down_thread="false" up_thread="false" />
| <pbcast.GMS join_timeout="5000" join_retry_timeout="2000" shun="true" print_local_addr="true" />
| <pbcast.STATE_TRANSFER up_thread="false" down_thread="false" />
| </config>
| </attribute>
|
| <!-- The max amount of time (in milliseconds) we wait until the
| initial state (ie. the contents of the cache) are retrieved from
| existing members in a clustered environment
| -->
| <attribute name="InitialStateRetrievalTimeout">5000</attribute>
|
| <!-- Number of milliseconds to wait until all responses for a
| synchronous call have been received.
| -->
| <attribute name="SyncReplTimeout">10000</attribute>
|
| <!-- Max number of milliseconds to wait for a lock acquisition -->
| <attribute name="LockAcquisitionTimeout">15000</attribute>
|
| <!-- Name of the eviction policy class. -->
| <attribute name="EvictionPolicyClass">org.jboss.cache.eviction.LRUPolicy</attribute>
|
| <!-- Specific eviction policy configurations. This is LRU -->
| <attribute name="EvictionPolicyConfig">
| <config>
| <attribute name="wakeUpIntervalSeconds">5</attribute>
| <!-- Cache wide default -->
| <region name="/_default_">
| <attribute name="maxNodes">5000</attribute>
| <attribute name="timeToLiveSeconds">1000</attribute>
| </region>
| <region name="/aRegion">
| <attribute name="maxNodes">15000</attribute>
| <attribute name="timeToLiveSeconds">1000</attribute>
| </region>
| </config>
| </attribute>
|
| </mbean>
|
| </server>
|
Many thanks for your help.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4206004#4206004
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4206004
15 years, 11 months
[JBoss Cache: Core Edition] - Problems with Transaction Manager
by fatboysuns
Hi,
My app uses Spring and Jta for database transactions and I am trying some transaction configuration for my cache to work along with that ,
I am facing a couple of problems when doing that.
1. I saw specific mentions of JBossTransactionManagerLookup being the default transaction manager of Jboss cache. When using it as TransactionManagerLookupClass, I get a
java.lang.ClassCastException: org.jboss.tm.TxManager.
When trying to import I saw JBossTransactionManagerLookup available in 2 packages ie, org.jboss.cache.transaction.JBossTransactionManagerLookup and import org.hibernate.transaction.JBossTransactionManagerLookup. I get a class cast when using both.
2. When specifying the transactionManagerClass as the GenericTransactionManager, The application complains of having transaction Manager already registered to the Dummy transaction Manager. The exception is binding of DummyTransactionManager failed
javax.naming.NameAlreadyBoundException.
I am not specifying the dummy transaction manager anywhere. When I did step thru the cache code, i couldnt find any place where jboss cache was setting this. However when I specify no transactionManagers the actual value set in the transactionManager of cache class was null. I am very confused. I cant set it after creation of the cache too as this is not a dynamic property. I am not sure What I have to do. My configuration setting is very simple
String tmlc = JBossTransactionManagerLookup.class.getName();
configuration.setTransactionManagerLookupClass(tmlc);
configuration.setIsolationLevel(IsolationLevel.READ_COMMITTED);
configuration.setCacheMode(CacheMode.REPL_SYNC);
configuration.setLockParentForChildInsertRemove(true);
configuration.setLockAcquisitionTimeout(15000);
I Saw some other posts mentioning the same problem. I am not sure what is wrong ? Any help to resolve this is much appreciated.
Regards
Sundar
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4205996#4205996
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4205996
15 years, 11 months