[JBoss JIRA] Created: (JASSIST-34) Throw a more descriptive exception when a class file does not start with 0xCAFEBABE
by Josh Devins (JIRA)
Throw a more descriptive exception when a class file does not start with 0xCAFEBABE
-----------------------------------------------------------------------------------
Key: JASSIST-34
URL: http://jira.jboss.com/jira/browse/JASSIST-34
Project: Javassist
Issue Type: Bug
Environment: Jboss 4.0.5 GA with EJB3 deployer and IBM DB2 JDBC driver v3.3.54
Reporter: Josh Devins
Assigned To: Shigeru Chiba
Attachments: server.snipped.log
I have deployed an application that is using the IBM DB2 JDBC driver jar version 3.3.54. With the EJB3 deployer installed (since we have EJB3s), some class file in the DB2 jar apparently does not start with 0XCAFEBABE, or "the magic hex code". The EJB3 deployer is using Javassist to examine all of the class files in the jar, but when it hits one of these wonky IBM class files, Javaasisst is throwing an IOException with message "non class file". This is rather useless as the EJB3 deployer then rethrows this IOException as a RuntimeException. I get no info about what class failed, what jar file it was in, etc. Perhaps this is an EJB3 deployer issue, but I believe that Javassist should at least throw a more descriptive exception, and not even an IOException. Or better yet, the EJB3 deployer should not just die and rethrow the RuntimeException, just skip the file!
Stepping through the JBoss and Javassist code with my debugger was the only way to figure this out. You can look at the attached stack trace from the server log for the exact files and line numbers.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
17 years
[JBoss JIRA] Created: (JBAS-4254) Client read timeout setting wanted for HTTP Invoker
by Anders Welen (JIRA)
Client read timeout setting wanted for HTTP Invoker
----------------------------------------------------
Key: JBAS-4254
URL: http://jira.jboss.com/jira/browse/JBAS-4254
Project: JBoss Application Server
Issue Type: Feature Request
Security Level: Public (Everyone can see)
Affects Versions: JBossAS-4.0.3 SP1
Reporter: Anders Welen
Priority: Minor
There is no read timeout setting to prevent client threads from hanging while using the HTTP Invoker.
A quick fix (if you are using SUN JVM) is to use the parameter "-Dsun.net.client.defaultReadTimeout=60000". The problem with this solution is that it affects all connection, not just the HTTPInvoker.
A solution that works (if Java 5 is used) is to add a call to the method "setReadTimeout(xxx)" on the "conn" variable in the method "invoke()" in "org.jboss.invocation.http.interfaces.Util".
(The same problem exists with the standard JRMP Invoker aswell. It's just the Pooled Invoker that has a read timeout)
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
17 years
[JBoss JIRA] Created: (JBREM-882) Simple static API to easily create simple clients
by David Lloyd (JIRA)
Simple static API to easily create simple clients
-------------------------------------------------
Key: JBREM-882
URL: http://jira.jboss.com/jira/browse/JBREM-882
Project: JBoss Remoting
Issue Type: Task
Security Level: Public (Everyone can see)
Reporter: David Lloyd
Priority: Minor
Fix For: Remoting 3 M2
Right now the user has to create an endpoint, register protocol handler support, open a session, locate a service, and only then can they open contexts. This is fine in a container where all that stuff would be managed for you. But for trivial clients it's a PITA.
Some kind of simple static method for trivial clients would be nice:
ContextSource<RequestType, ReplyType> source = Remoting.connectToService(uri, userName, password, serviceType, RequestType.class, ReplyType.class);
Context<RequestType, ReplyType> context = source.openContext();
ReplyType r = context.invoke(context.createRequest(new RequestType(...))).getBody();
Maybe even provide some behind-the-scenes session pooling or something...
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
17 years
[JBoss JIRA] Created: (JBFORUMS-262) Empty post error displays MessageValidationException
by Luc Boudreau (JIRA)
Empty post error displays MessageValidationException
----------------------------------------------------
Key: JBFORUMS-262
URL: http://jira.jboss.com/jira/browse/JBFORUMS-262
Project: JBoss Forums
Issue Type: Bug
Components: Forum View Layer
Affects Versions: 1.0.1 RC
Environment: Any
Reporter: Luc Boudreau
Assigned To: Ryszard Kozmik
Priority: Critical
Try to create a post, don't write anything as a subject or a body and press submit. The error message is totally useless.
Message : org.jboss.portlet.forums.ui.action.MessageValidationException. Please try again
Stack :
2007-11-05 15:41:35,075 ERROR [org.jboss.portlet.forums.ui.JSFUtil] org.jboss.po
rtlet.forums.ui.JSFUtil
org.jboss.portlet.forums.ui.action.MessageValidationException
at org.jboss.portlet.forums.ui.action.PostAction.validateMessage(PostAct
ion.java:561)
at org.jboss.portlet.forums.ui.action.NewTopic.execute(NewTopic.java:118
)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.sun.el.parser.AstValue.invoke(AstValue.java:130)
at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:274)
at com.sun.facelets.el.TagMethodExpression.invoke(TagMethodExpression.ja
va:68)
at com.sun.facelets.el.LegacyMethodBinding.invoke(LegacyMethodBinding.ja
va:69)
at org.apache.myfaces.application.ActionListenerImpl.processAction(Actio
nListenerImpl.java:63)
at org.jboss.portlet.forums.auth.AuthorizationListener.processAction(Aut
horizationListener.java:101)
at javax.faces.component.UICommand.broadcast(UICommand.java:106)
at javax.faces.component.UIViewRoot._broadcastForPhase(UIViewRoot.java:9
0)
at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1
64)
at org.apache.myfaces.lifecycle.LifecycleImpl.invokeApplication(Lifecycl
eImpl.java:316)
at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java
:86)
at org.jboss.portlet.forums.ui.ForumsJSFPortlet.processAction(ForumsJSFP
ortlet.java:281)
at org.jboss.portal.portlet.impl.jsr168.PortletContainerImpl.invokeActio
n(PortletContainerImpl.java:458)
at org.jboss.portal.portlet.impl.jsr168.PortletContainerImpl.dispatch(Po
rtletContainerImpl.java:401)
at org.jboss.portal.portlet.container.PortletContainerInvoker$1.invoke(P
ortletContainerInvoker.java:86)
at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.j
ava:131)
at org.jboss.portal.core.aspects.portlet.TransactionInterceptor.org$jbos
s$portal$core$aspects$portlet$TransactionInterceptor$invokeRequired$aop(Transact
ionInterceptor.java:106)
at org.jboss.portal.core.aspects.portlet.TransactionInterceptor$invokeRe
quired_9103964459766407072.invokeNext(TransactionInterceptor$invokeRequired_9103
964459766407072.java)
at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:126)
at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java
:195)
at org.jboss.portal.core.aspects.portlet.TransactionInterceptor$invokeRe
quired_9103964459766407072.invokeNext(TransactionInterceptor$invokeRequired_9103
964459766407072.java)
at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:126)
at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java
:195)
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
17 years
[JBoss JIRA] Created: (JBAS-4455) LoadBalancePolicy that tries to pin all requests associated with a tx to one server
by Brian Stansberry (JIRA)
LoadBalancePolicy that tries to pin all requests associated with a tx to one server
-----------------------------------------------------------------------------------
Key: JBAS-4455
URL: http://jira.jboss.com/jira/browse/JBAS-4455
Project: JBoss Application Server
Issue Type: Feature Request
Security Level: Public (Everyone can see)
Components: Clustering
Reporter: Brian Stansberry
Assigned To: Galder Zamarreno
Priority: Minor
The HA proxies don't allow failover once a tx has reached a server. This can lead to this kind of situation:
EJB A deployed on nodes 1 and 2.
EJB B deployed on nodes 1 and 2.
1) Start tx, invoke on A.1.
2) Lookup B.
3) Invoke on B. LB policy picks B.2
4) Node 2 is dead for some reason so call fails.
5) Can't fail over because tx context won't allow a failover after a call has reached a server.
But, B.1 is fine and is running on the only node the tx has invoked on. :(
Approach to improving this. This is based on JRMPInovkerProxyHA methods, but the idea is generic:
In invocationHasReachedAServer, instead of storing null as the value, you store the target (key is the tx).
In invoke, if there's a tx, you add that target (if there is one) to the invocation as transient metadata
The LB policy gets passed the invocation as an arg when it chooses a target (this is already in the API)
LB policy checks for the metadata. If there, and that target is in its target list, return that target
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
17 years