[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-3721) Seam Remoting Callback not set before server response comes back
by Paul Chan (JIRA)
Seam Remoting Callback not set before server response comes back
----------------------------------------------------------------
Key: JBSEAM-3721
URL: https://jira.jboss.org/jira/browse/JBSEAM-3721
Project: Seam
Issue Type: Bug
Components: Remoting
Affects Versions: 2.1.0.SP1, 2.1.0.GA
Environment: XP SP3, VMWARE 3.5i ESX, 2GB RAM, DualCore AMD 3800+
Reporter: Paul Chan
Assignee: Shane Bryzak
Original Issue
===========
I tracked the issue down to one line of javascript code in remote.js
req.onreadystatechange = function() {};
The following thread discusses the problem is with an old version of the JScript.dll 5.6.0.8820 which is the same version I've got on a laptop here.
http://groups.google.com/group/Google-Web-Toolkit/browse_thread/thread/69...
One solution is to upgrade JScript.dll to 5.6.0.8831
http://www.microsoft.com/technet/security/bulletin/ms06-023.mspx
Or we can do what they did in GWT which is to move the req.onreadystatechange out of the scope of the current function
window.setTimeout(function() {
req.onreadystatechange = function() {};
}, 0 );
Problem found with the above fix
============================
I have found a bug in this fix.
If the server response comes back before the "window.setTimeout(xxx,0) expires, it will drop it.
>From reading the javascript specs, the minimum timeout value is actually around 25ms. Anything smaller than that, it gets rounded up.
Also, using timer to set response callback are inherently flawed IMO. There's always going to be some sort of race condition.
This problem seems to happen on internet explorer, and safari. Firebox doesn't seem to have a problem with it though.
I discovered this problem when I set a break point on the incoming request processing code on the server. If the breakpoint is inserted, everything is good. But when I removed the breakpoint, the problem appears again.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
15 years, 3 months
[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-4420) Restrictions not called after restoreViewPhase
by Bernard Labno (JIRA)
Restrictions not called after restoreViewPhase
----------------------------------------------
Key: JBSEAM-4420
URL: https://jira.jboss.org/jira/browse/JBSEAM-4420
Project: Seam
Issue Type: Bug
Components: Test Harness
Affects Versions: 2.2.0.GA, 2.1.1.GA
Environment: jboss 4.2.2.GA
Reporter: Bernard Labno
In restoreViewPhase() method of AbstractSeamTest.Request following method is called to early "facesContext.renderResponse();". It is too early, because page restrictions are not being processed i afterPhase.
Take a look at Pages.postRestore(FacesContext) :
if ( !facesContext.getRenderResponse() ) {page.postRestore(facesContext);}
page restrictions are processed in method "page.postRestore(facesContext)".
The problem is that if we have page parameter that should be put into bean with restriction than we will get following stacktrace, user will not be able to catch this and problems with transactions will appear in further test methods :
WARN [org.jboss.seam.jsf.SeamPhaseListener] uncaught exception, passing to exception handler
org.jboss.seam.InstantiationException: Could not instantiate Seam component: tagHome
at org.jboss.seam.Component.newInstance(Component.java:2106)
at org.jboss.seam.Component.getInstance(Component.java:1988)
at org.jboss.seam.Component.getInstance(Component.java:1950)
at org.jboss.seam.Component.getInstance(Component.java:1944)
at org.jboss.seam.Namespace.getComponentInstance(Namespace.java:55)
at org.jboss.seam.Namespace.getComponentInstance(Namespace.java:50)
at org.jboss.seam.el.SeamELResolver.resolveBase(SeamELResolver.java:166)
at org.jboss.seam.el.SeamELResolver.getValue(SeamELResolver.java:53)
at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:143)
at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:143)
at org.jboss.seam.core.Validators$ValidatingResolver.getValue(Validators.java:172)
at org.jboss.el.parser.AstIdentifier.getValue(AstIdentifier.java:44)
at org.jboss.el.parser.AstValue.getTarget(AstValue.java:34)
at org.jboss.el.parser.AstValue.setValue(AstValue.java:83)
at org.jboss.el.ValueExpressionImpl.setValue(ValueExpressionImpl.java:249)
at org.jboss.seam.core.Validators.validate(Validators.java:132)
at org.jboss.seam.navigation.Param.validateConvertedValue(Param.java:243)
at org.jboss.seam.navigation.Pages.convertAndValidateStringValuesInPageContext(Pages.java:818)
at org.jboss.seam.navigation.Pages.postRestore(Pages.java:450)
at org.jboss.seam.jsf.SeamPhaseListener.postRestorePage(SeamPhaseListener.java:546)
at org.jboss.seam.jsf.SeamPhaseListener.afterRestoreView(SeamPhaseListener.java:392)
at org.jboss.seam.jsf.SeamPhaseListener.afterServletPhase(SeamPhaseListener.java:228)
at org.jboss.seam.jsf.SeamPhaseListener.afterPhase(SeamPhaseListener.java:194)
at org.jboss.seam.mock.AbstractSeamTest$Request.restoreViewPhase(AbstractSeamTest.java:756)
at org.jboss.seam.mock.AbstractSeamTest$Request.emulateJsfLifecycle(AbstractSeamTest.java:583)
at org.jboss.seam.mock.AbstractSeamTest$Request.access$300(AbstractSeamTest.java:177)
at org.jboss.seam.mock.AbstractSeamTest$Request$2.doFilter(AbstractSeamTest.java:497)
at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
at org.jboss.seam.web.IdentityFilter.doFilter(IdentityFilter.java:40)
at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:90)
at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
at org.jboss.seam.web.HotDeployFilter.doFilter(HotDeployFilter.java:53)
at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
at org.jboss.seam.mock.AbstractSeamTest$Request.run(AbstractSeamTest.java:491)
xxx
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.testng.internal.MethodHelper.invokeMethod(MethodHelper.java:607)
at org.testng.internal.Invoker.invokeMethod(Invoker.java:517)
at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:669)
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:956)
at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:126)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:110)
at org.testng.TestRunner.runWorkers(TestRunner.java:759)
at org.testng.TestRunner.privateRun(TestRunner.java:592)
at org.testng.TestRunner.run(TestRunner.java:486)
at org.testng.SuiteRunner.runTest(SuiteRunner.java:332)
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:327)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:299)
at org.testng.SuiteRunner.run(SuiteRunner.java:204)
at org.testng.TestNG.createAndRunSuiteRunners(TestNG.java:867)
at org.testng.TestNG.runSuitesLocally(TestNG.java:832)
at org.testng.TestNG.run(TestNG.java:748)
at org.testng.remote.RemoteTestNG.run(RemoteTestNG.java:73)
at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:124)
Caused by: org.jboss.seam.security.AuthorizationException: Authorization check failed for expression [#{s:hasRole('ADMIN')}]
at org.jboss.seam.security.Identity.checkRestriction(Identity.java:222)
at org.jboss.seam.security.SecurityInterceptor$Restriction.check(SecurityInterceptor.java:113)
at org.jboss.seam.security.SecurityInterceptor.aroundInvoke(SecurityInterceptor.java:159)
at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107)
at org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:185)
at org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:103)
xxx
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.jboss.seam.util.Reflections.invoke(Reflections.java:22)
at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:144)
at org.jboss.seam.Component.callComponentMethod(Component.java:2211)
at org.jboss.seam.Component.callCreateMethod(Component.java:2134)
at org.jboss.seam.Component.newInstance(Component.java:2094)
... 64 more
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
15 years, 3 months
[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-1898) EntityQuery hints map is defined as <String, String> instead of <String, Object>
by david castannon (JIRA)
EntityQuery hints map is defined as <String, String> instead of <String, Object>
--------------------------------------------------------------------------------
Key: JBSEAM-1898
URL: http://jira.jboss.com/jira/browse/JBSEAM-1898
Project: JBoss Seam
Issue Type: Bug
Reporter: david castannon
EntityQuery hints map field is defined as <String, String> instead of <String, Object> used at hibernate method setHint of QueryImpl.
So, if you want to set, e.g., "org.hibernate.cacheMode" hint with CacheMode.REFRESH jboss throws exception.
--
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
15 years, 3 months