[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-623) <s:selectDate> localization
by Stephan Bublava (JIRA)
<s:selectDate> localization
---------------------------
Key: JBSEAM-623
URL: http://jira.jboss.com/jira/browse/JBSEAM-623
Project: JBoss Seam
Issue Type: Patch
Components: JSF
Affects Versions: 1.1.0.GA
Reporter: Stephan Bublava
Priority: Minor
Currently <s:selectDate> is not locale-aware. This affects day names, month names, buttons as well as the date string written to the text field via JavaScript.
selectdate-localization-patch.txt is a first step to improve this.
Changes include:
- Weekends use a distinct CSS style and can be highlighted if desired. (I've changed the booking example to demonstrate this).
- The first day of the week is no longer harcoded to Sunday, but calculated according to the current locale settings (e.g. Monday for German).
- Day and month names are localised as well.
Open issues:
- Weekends are hardcoded to Saturday and Sunday. I have no idea how determine this info using Calendar, &c. APIs.
- Date formats are not kept in sync between JSF and JavaScript, which always uses MM/DD/YYYY, regardless of the locale.
- Button names ("close", "this month") are still hardcoded.
- It might be more flexible, to translate day / month names with the application ResourceBundle instead of using DateFormatSymbols.
--
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
19 years, 2 months
[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-691) Ability to turn off page parameter appending for s:link
by Christian Bauer (JIRA)
Ability to turn off page parameter appending for s:link
-------------------------------------------------------
Key: JBSEAM-691
URL: http://jira.jboss.com/jira/browse/JBSEAM-691
Project: JBoss Seam
Issue Type: Feature Request
Components: JSF
Reporter: Christian Bauer
Priority: Minor
You have basically two choices how you can transport state in a RESTful way between pages:
A. Use <s:link>, append the parameters manually, and pull the state on the target pages' backing bean with @RequestParameter
B. Use <s:link>, and let Seam automatically append the parameters that the target page requires (pages.xml parameters), set the values on the backing bean that way
Option A seems to be a good overall strategy if you rarely have to pass parameters around. Option B is the "always pass parameters around" option.
In practice, you need a mixed strategy frequently. You might go for option B because it is so convenient, but disabling the parameters when _not_ needed (because the target page treats them conditionally, for example) requires customized <s:link> declarations, like:
<s:link action="foo"><f:param name="aParamIDoNotWantToPropagate" value=""/></s:link>
Effectively, page parameters currently guarantee that every link to that page contains the specified parameters. I want to sometimes disable this guarantee, e.g. with <s:link parameters="none"/>
--
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
19 years, 2 months
[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-720) Restful parameters are not always set in stateless beans
by John Ray (JIRA)
Restful parameters are not always set in stateless beans
--------------------------------------------------------
Key: JBSEAM-720
URL: http://jira.jboss.com/jira/browse/JBSEAM-720
Project: JBoss Seam
Issue Type: Bug
Affects Versions: 1.1.1.GA
Environment: JBoss 4.0.5GA, Seam 1.1.1GA, Facelets
Reporter: John Ray
I've created a search page that has both a form to enter your search query and displays the results. I've defined the following in my pages.xml
<page view-id="/search.xhtml">
<param name="search" value="#{groupSearch.searchString}"/>
</page>
The groupSearch is an EJB3 stateless session bean with getSearchString()/setSearchString() methods in it.
I wanted it to work so that when you browse to
"/search.seam" - It just displays the form to enter a search keyword
"/search.seam?search=abc" - Displays the form to do a new search as well as the search results for "abc"
If I browse to "/search.seam?search=abc" then Seam calls my setSearchString() method passing "abc" and everything works fine.
The problem is when I then browse to the "/search.seam" which does not specify a search parameter. Seam never calls my setSearchString() method. The groupSearch bean is cached and already had the searchString set to "abc" from the previous page so it ends up rendering the page as though a search was performed for "abc". It also seems to be a bit of a security bug because the stateless beans are shared among all users so one user can view what a different user has searched for.
If I create a
@RequestParameter(value="search")
public void setSearchString(String searchString) {
...
}
then this method is always called and everything works fine. I just think that if I define the parameter in pages.xml then seam should treat it the same as @RequestParameter.
--
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
19 years, 2 months
[jbossseam-issues] [JBoss JIRA] Commented: (JBSEAM-355) Constructor injection of component dependencies
by Bill Wallace (JIRA)
[ http://jira.jboss.com/jira/browse/JBSEAM-355?page=comments#action_12351959 ]
Bill Wallace commented on JBSEAM-355:
-------------------------------------
It could also be support on POJO constructors, and POJO create methods, as well as unwrap methods.
> Constructor injection of component dependencies
> -----------------------------------------------
>
> Key: JBSEAM-355
> URL: http://jira.jboss.com/jira/browse/JBSEAM-355
> Project: JBoss Seam
> Issue Type: Feature Request
> Components: Core
> Reporter: Christian Bauer
> Priority: Minor
>
> Take the registration example. The 'user' component is instantiated by Seam when JSF first looks for 'user' in a page. It is then put in the SESSION context (think CONVERSATION for other use cases of what I'm proposing). Seam uses the default constructor to instantiate the component.
> Now imagine that some attributes of User are immutable and that the only way to set their values is through a different constructor. Also imagine that these values are actually present when Seam instantiates the 'user' component, e.g. in the current CONVERSATION. I'd like to tell Seam to call my constructor and use EL to bind the arguments.
> Without this feature, immutable properties need to have public setter methods that I call later in an action method to wire in the required attributes manually.
--
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
19 years, 2 months
[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-676) icefaces inputfile component broken
by milestone (JIRA)
icefaces inputfile component broken
-----------------------------------
Key: JBSEAM-676
URL: http://jira.jboss.com/jira/browse/JBSEAM-676
Project: JBoss Seam
Issue Type: Bug
Components: Core, Tools
Affects Versions: 1.1.1.GA, 1.1.0.GA
Environment: Server: jboss-4.0.5-GA
Seam: jboss-seam-1.1.1-GA
icefaces version: icefaces-1.5.2.jar
OS: WinXP Professional
Reporter: milestone
Priority: Minor
Attachments: web.xml
I am getting the following error integrating the icefaces input file and progressbar component.
16:52:50,353 ERROR [PhaseListenerManager] Exception in PhaseListener RENDER_RESPONSE(6) beforePhase.
java.lang.IllegalStateException: No page context active
at org.jboss.seam.core.FacesPage.instance(FacesPage.java:87)
at org.jboss.seam.jsf.AbstractSeamPhaseListener.beforeRender(AbstractSeamPhaseListener.java:219)
at org.jboss.seam.jsf.SeamPhaseListener.beforePhase(SeamPhaseListener.java:51)
at org.apache.myfaces.lifecycle.PhaseListenerManager.informPhaseListenersBefore(PhaseListenerManager.java:70)
at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:373)
at com.icesoft.faces.webapp.xmlhttp.PersistentFacesState.render(PersistentFacesState.java:180)
at de.ellumination.share.sb.UploadBean.progress(UploadBean.java:109)
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.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112)
at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)
at org.jboss.seam.intercept.EJBInvocationContext.proceed(EJBInvocationContext.java:37)
at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:55)
at org.jboss.seam.interceptors.BijectionInterceptor.bijectTargetComponent(BijectionInterceptor.java:51)
at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
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:18)
at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:169)
at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:64)
at org.jboss.seam.interceptors.OutcomeInterceptor.interceptOutcome(OutcomeInterceptor.java:23)
at sun.reflect.GeneratedMethodAccessor117.invoke(Unknown Source)
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:18)
at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:169)
at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:64)
at org.jboss.seam.interceptors.ConversationInterceptor.endOrBeginLongRunningConversation(ConversationInterceptor.java:51)
at sun.reflect.GeneratedMethodAccessor116.invoke(Unknown Source)
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:18)
at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:169)
at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:64)
at org.jboss.seam.intercept.RootInterceptor.createSeamInvocationContext(RootInterceptor.java:144)
at org.jboss.seam.intercept.RootInterceptor.invokeInContexts(RootInterceptor.java:129)
at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:102)
at org.jboss.seam.intercept.SessionBeanInterceptor.aroundInvoke(SessionBeanInterceptor.java:49)
at sun.reflect.GeneratedMethodAccessor115.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:118)
at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
at org.jboss.ejb3.entity.ExtendedPersistenceContextPropagationInterceptor.invoke(ExtendedPersistenceContextPropagationInterceptor.java:57)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:46)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79)
at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:191)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
at org.jboss.ejb3.stateful.StatefulInstanceInterceptor.invoke(StatefulInstanceInterceptor.java:83)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)
at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:102)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:47)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
at org.jboss.ejb3.stateful.StatefulContainer.localInvoke(StatefulContainer.java:203)
at org.jboss.ejb3.stateful.StatefulLocalProxy.invoke(StatefulLocalProxy.java:98)
at $Proxy96.progress(Unknown Source)
at de.ellumination.share.sb.UploadHome$$FastClassByCGLIB$$13259d82.invoke()
at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:45)
at org.jboss.seam.intercept.ClientSideInterceptor$1.proceed(ClientSideInterceptor.java:73)
at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:55)
at org.jboss.seam.interceptors.RemoveInterceptor.removeIfNecessary(RemoveInterceptor.java:39)
at sun.reflect.GeneratedMethodAccessor114.invoke(Unknown Source)
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:18)
at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:169)
at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:64)
at org.jboss.seam.interceptors.ExceptionInterceptor.handleExceptions(ExceptionInterceptor.java:38)
at sun.reflect.GeneratedMethodAccessor113.invoke(Unknown Source)
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:18)
at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:169)
at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:64)
at org.jboss.seam.interceptors.SynchronizationInterceptor.serialize(SynchronizationInterceptor.java:30)
at sun.reflect.GeneratedMethodAccessor112.invoke(Unknown Source)
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:18)
at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:169)
at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:64)
at org.jboss.seam.intercept.RootInterceptor.createSeamInvocationContext(RootInterceptor.java:144)
at org.jboss.seam.intercept.RootInterceptor.invokeInContexts(RootInterceptor.java:129)
at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:112)
at org.jboss.seam.intercept.ClientSideInterceptor.interceptInvocation(ClientSideInterceptor.java:82)
at org.jboss.seam.intercept.ClientSideInterceptor.intercept(ClientSideInterceptor.java:51)
at org.jboss.seam.intercept.Proxy$$EnhancerByCGLIB$$5b286750.progress()
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 com.icesoft.faces.component.inputfile.InputFile.fireEvent(InputFile.java:305)
at com.icesoft.faces.component.inputfile.ProgressOutputStream.run(ProgressOutputStream.java:91)
at java.lang.Thread.run(Thread.java:619)
--
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
19 years, 2 months