[Remoting] - Re: EJB3/Socket invoker - connection timeouts
by ron.sigalï¼ jboss.com
anonymous wrote :
| This is how the ServerThreads could miss the notifies from the ServerSocketInvoker (seems much more likely):
|
| (1) A ServerThread finishes processing, calls clientpool.notify() and is then suspended by the scheduler
| (2) ServerSocketInvoker wakes up and calls ServerThread.notify
| (3) The ServerThread then calls this.wait() and waits forever because it missed the ServerSocketInvoker's notify
|
| Each time this happens, it would take a ServerThread out of comission. Eventually you'd run out of ServerThreads.
|
Before we get in too deep here, check out thread "Important bug in thread pool management" (http://www.jboss.com/index.html?module=bb&op=viewtopic&t=80814 )
and JIRA issue JBREM-409 (http://jira.jboss.com/jira/browse/JBREM-409). This bug was fixed as of Remoting version 1.4.5.GA, but JBoss Application Server 4.0.5, for example, comes with Remoting 1.4.3.GA. You should be able to just drop in jboss-remoting.jar from, say, version 1.4.6.GA (the latest in the 1.x line). Moreover, I believe that the latest version of EJB3 should run with the newest version of Remoting, which is 2.2.0.SP4.
Let me know whether upgrading solves the problem.
-Ron
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4057950#4057950
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4057950
18Â years, 10Â months
[JBoss Seam] - Bug? Seam-2.0-Beta - HttpSession Creation
by PatrickMadden
Hi I've been using Seam 1.3.alpha for a while and I just upgraded to Seam 2.0 Beta from CVS on June 26th middle of the day. Just curious if there is a known problem with the following:
In my web.xml I define some standard http session listeners as follows:
| <listener>
| <listener-class>com.clooster.web.context.SearchSessionListener</listener-class>
| </listener>
|
The code for the listener is as follows:
| package com.clooster.web.context;
|
| import java.util.logging.Level;
|
| import javax.servlet.http.HttpSessionAttributeListener;
| import javax.servlet.http.HttpSessionBindingEvent;
| import javax.servlet.http.HttpSessionEvent;
| import javax.servlet.http.HttpSessionListener;
|
| import com.clooster.web.util.IdToSessionMap;
| import com.clooster.xjava.common.XSystem;
|
| /**
| *
| * @author PatrickMadden
| *
| */
| public class SearchSessionListener implements HttpSessionListener, HttpSessionAttributeListener
| {
| public SearchSessionListener()
| {
| super();
| XSystem.logInfo("Search Session Listener Allocation");
| }
|
| public void sessionCreated(HttpSessionEvent evt)
| {
| XSystem.logInfo("Session Created = " + evt.getSession().getId());
| IdToSessionMap.getInstance().addHttpSession(evt.getSession());
| SessionController.getInstance(evt.getSession().getId());
| }
|
| public void sessionDestroyed(HttpSessionEvent evt)
| {
| XSystem.logInfo("Session Destroyed = " + evt.getSession().getId());
| IdToSessionMap.getInstance().removeHttpSession(evt.getSession());
| SessionController.freeInstance(evt.getSession().getId());
| }
|
| public void attributeAdded(HttpSessionBindingEvent evt)
| {
| logSesionBindingEvent("Added Session attribute: {0} and value: {1}.", evt);
| }
|
| public void attributeRemoved(HttpSessionBindingEvent evt)
| {
| logSesionBindingEvent("Removed Session attribute: {0} and value: {1}.", evt);
| }
|
| public void attributeReplaced(HttpSessionBindingEvent evt)
| {
| logSesionBindingEvent("Replaced Session attribute: {0} and value: {1}", evt);
| }
|
| protected void logSesionBindingEvent(String msg,
| HttpSessionBindingEvent evt)
| {
| Object[] params = new Object[2];
| params[0] = evt.getName();
| params[1] = evt.getValue();
|
| if (XSystem.isLoggable(Level.FINE))
| XSystem.log(Level.FINE, msg, null, params);
| params = null;
| }
| }
|
However when the above session created method is called I end up in an endless loop resulting in crap. Not sure if it is my problem but I created a new project using the new Seam Gen and grabbed my old code and put it in the new project.
Here is the call stack once SessionCreated gets called:
anonymous wrote :
| 01:15:50,171 INFO [Contexts] starting up: org.jboss.seam.web.session
| 01:16:29,031 ERROR [STDERR] Jun 27, 2007 1:16:29 AM com.clooster.web.context.SearchSessionListener sessionCreated(SearchSessionListener.java:28)
| INFO: Session Created = 712DBE64DDDD4035CA78D696353AC6C7
| 01:16:57,968 INFO [Contexts] starting up: org.jboss.seam.security.identity
| 01:16:58,000 INFO [Contexts] starting up: org.jboss.seam.web.session
| 01:17:00,062 ERROR [STDERR] Jun 27, 2007 1:17:00 AM com.clooster.web.context.SearchSessionListener sessionCreated(SearchSessionListener.java:28)
| INFO: Session Created = 9BEFD3CEB5AA329B2B1C74F0718EF8AC
| 01:17:01,031 INFO [Contexts] starting up: org.jboss.seam.security.identity
| 01:17:01,046 INFO [Contexts] starting up: org.jboss.seam.web.session
| 01:17:01,765 ERROR [STDERR] Jun 27, 2007 1:17:01 AM com.clooster.web.context.SearchSessionListener sessionCreated(SearchSessionListener.java:28)
| INFO: Session Created = 6CF43352A77FE107B9AC9E1D2B73FE13
| 01:17:48,656 INFO [Contexts] starting up: org.jboss.seam.security.identity
| 01:17:48,656 INFO [Contexts] starting up: org.jboss.seam.web.session
| 01:17:50,906 ERROR [STDERR] Jun 27, 2007 1:17:50 AM com.clooster.web.context.SearchSessionListener sessionCreated(SearchSessionListener.java:28)
| INFO: Session Created = BFB33DC9C2BE5EA4EDDA3A5D4315D71C
| 01:17:50,906 INFO [Contexts] starting up: org.jboss.seam.security.identity
| 01:17:50,906 INFO [Contexts] starting up: org.jboss.seam.web.session
| 01:17:51,921 ERROR [STDERR] Jun 27, 2007 1:17:51 AM com.clooster.web.context.SearchSessionListener sessionCreated(SearchSessionListener.java:28)
| INFO: Session Created = 17CE9ADF31DF5A8299E6A307BF4CC3B9
| 01:17:51,921 INFO [Contexts] starting up: org.jboss.seam.security.identity
| 01:17:51,921 INFO [Contexts] starting up: org.jboss.seam.web.session
| 01:17:52,953 ERROR [STDERR] Jun 27, 2007 1:17:52 AM com.clooster.web.context.SearchSessionListener sessionCreated(SearchSessionListener.java:28)
| INFO: Session Created = 920F420E569E95A6E7D163A631B876F1
| 01:17:52,953 INFO [Contexts] starting up: org.jboss.seam.security.identity
| 01:17:52,968 INFO [Contexts] starting up: org.jboss.seam.web.session
|
Any Help is Greatly Appreciated as I really need those session maps to deal with some Flex/Flash components that I'm using.
BTW, using the new Red Hat Developer Studio stuff and the two way modification ability already saved me a lot of time with some stupid CSS stuff I was dealing with.
Thanks again and looking forward to the final release of Seam/RichFaces!!!! You guys do great work.
PVM
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4057949#4057949
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4057949
18Â years, 10Â months
[Messaging, JMS & JBossMQ] - Persistence and caching using Oracle
by Honest
In my application i use jboss-4.2.0GA. As persistence storage for JMS i use Oracle(oracle-jdbc2-service.xml), before this i use default storage(hsqldb-jdbc2-service.xml). And on my application work this error raise:
| 11:01:40,453 WARN [arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.BasicAction_58] - Abort of act
| ion id a001912:12dc:467bdf8d:2385f invoked while multiple threads active within it.
| 11:01:40,453 WARN [arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.CheckedAction_2] - CheckedActi
| on::check - atomic action a001912:12dc:467bdf8d:2385f aborting with 1 threads active!
| 11:01:40,453 WARN [JDBCExceptionReporter] SQL Error: 0, SQLState: null
| 11:01:40,453 ERROR [JDBCExceptionReporter] Transaction is not active: tx=TransactionImple < ac, BasicAction: a001912:12dc:467bdf8d:2385f status: ActionStatus.ABORTED >; - nested throwable: (javax.resource.ResourceException: Transaction is not active: tx=TransactionIm
| ple < ac, BasicAction: a001912:12dc:467bdf8d:2385f status: ActionStatus.ABORTED >)
| 11:01:40,484 ERROR [TxInterceptorCMT] IllegalStateException while setting transaction for rollback o
| nly
| java.lang.IllegalStateException: [com.arjuna.ats.internal.jta.transaction.arjunacore.inactive] [com.
| arjuna.ats.internal.jta.transaction.arjunacore.inactive] The transaction is not active!
| at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.setRollbackOnly(Transact
| ionImple.java:344)
| at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:157)
| at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:350)
| at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:181)
| at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:168)
| at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:205)
| at org.jboss.ejb.plugins.CleanShutdownInterceptor.invoke(CleanShutdownInterceptor.java:278)
| at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.jav
| a:138)
| at org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:648)
| at org.jboss.ejb.Container.invoke(Container.java:960)
| at sun.reflect.GeneratedMethodAccessor114.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
| at java.lang.reflect.Method.invoke(Unknown Source)
| at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
| at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
| at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
| at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
| at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
| at org.jboss.invocation.unified.server.UnifiedInvokerHA.invoke(UnifiedInvokerHA.java:146)
| at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:734)
| at org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:560)
| at org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:383)
| at org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:165)
|
When i use default storage all work normal. Please help!
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4057945#4057945
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4057945
18Â years, 10Â months
[EJB 3.0] - Re: generating a Primary Key using a Sequence in JPA
by ashusri000
Hi ,
What I am trying to do is , simply trying to persist a new Object every time the main method gets called and could not see anypoint where there are multiple / double call to sequence. The sequence that I am using is not already defined in the database , I have defined it in the code itself.
Here is the code :
import java.io.Serializable;
import java.util.HashMap;
import javax.persistence.Entity;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Id;
import javax.persistence.Persistence;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import javax.persistence.Column;
import javax.persistence.DiscriminatorColumn;
import javax.persistence.DiscriminatorType;
@Entity
@Table(name="TAB1")
@DiscriminatorColumn(name="ID", discriminatorType = DiscriminatorType.INTEGER)
public class Tab1 implements Serializable {
@Id
@GeneratedValue(strategy=GenerationType.TABLE, generator = "tabGen")
@SequenceGenerator(name="tabGen" , allocationSize=1)
@Column(name="ID")
private long id;
private String val;
private static final long serialVersionUID = 1L;
public Tab1() {
super();
this.val= "hello";
}
public long getId() {
return this.id;
}
public void setId(long id) {
this.id = id;
}
public String getVal() {
return this.val;
}
public void setVal(String val) {
this.val = val;
}
public static void main(String[] args) {
EntityManagerFactory emf =
Persistence.createEntityManagerFactory("testApp", new HashMap());
EntityManager em = emf.createEntityManager();
try{
em.getTransaction().begin();
em.persist(new Tab1());
System.out.println("Done");
em.getTransaction().commit();
System.out.println("Entered the Values");
}catch (Exception e) {
e.printStackTrace();
}finally{
em.close();
}
}
}
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4057942#4057942
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4057942
18Â years, 10Â months
[JBossCache] - uninitialized nodes
by aditsu
Hi, I'm using jboss-cache 1.4.1.SP3; I'd like to understand when and especially why some nodes are marked as uninitialized.
When the app starts, I insert some data into the cache (using put(Fqn, Map)), but it looks like the maps get added an extra key ("jboss:internal:uninitialized") which leads to 2 things I definitely do NOT want:
- when I try to get a node, the cache goes to the cacheloader to load the data (although it is already in memory)
- when I use getChildren, the child nodes are retrieved with the extra key in their data map, which wreaks havoc in the app logic
Here's some details about the cache configuration:
- mode = REPL_SYNC
- isolation = READ_COMMITTED
- no eviction policy
- no passivation
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4057941#4057941
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4057941
18Â years, 10Â months
[JBoss Seam] - Page parameter and returnToCapturedView
by fernando_jmt
Hi.
I have page parameter registered with a converter which encrypts and decrypts the value, something like this:
| <page view-id="/admin/user.xhtml">
| <param name="id" value="#{userAction.id}" converter="#{cipherConverter.forLong}"/>
| </page>
|
I also have registered the following in components.xml:
| <event type="org.jboss.seam.notLoggedIn">
| <action expression="#{redirect.captureCurrentView}"/>
| </event>
| <event type="org.jboss.seam.postAuthenticate">
| <action expression="#{redirect.returnToCapturedView}"/>
| </event>
|
I have the following scenario:
1.- Log in.
2.- In the user list copy one of the urls with the page param encrypted: http://localhost:8080/myapp/admin/user.jsf?id=x5JyJWpACE4*
3.- Log off the application (I'm forcing this, but it supposes the session expired).
4.- Copy the url of the point 2. into the browser address bar, and hit enter.
5.- cipherConverter is called, specifically the getAsObject of the converter is called. Of course this method will convert the encrypted id to Long.
6.- The Login form is called, I write the account info and then log in.
7.- Immediately cipherConverter is called again. The getAsObject of the converter is called, but the value passed is the decrypted by the point 5. In this point I will always get an exception because the getAsObject expects an encrypted string, but the value passed in is an decrypted string (the long as string).
Is the execution of the point 5 right?
Why is invoking the converter first and then capturing the decrypted param?
Is there a way I can follow to get this working fine?
Thanks in advance for your help.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4057940#4057940
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4057940
18Â years, 10Â months