[jira] [Commented] (MYFACES-3130) [PERF] Avoid unnecessary AbstractList$Itr instances

2011-05-12 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-3130?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13032347#comment-13032347
 ] 

Jan-Kees van Andel commented on MYFACES-3130:
-

One comment. Since we know some of the collections where the performance gain 
is substantial, I suggest to put some "instanceof ArrayList" checks in the code 
and log a warning that an ArrayList is more suitable.

I know it's not strictly necessary, but at least it warns users for bad 
performance.

About the concurrentmodificationexception, why not just do a list.toArray() and 
then loop over that array? It might even improve performance (not tested)...

> [PERF] Avoid unnecessary AbstractList$Itr instances
> ---
>
> Key: MYFACES-3130
> URL: https://issues.apache.org/jira/browse/MYFACES-3130
> Project: MyFaces Core
>  Issue Type: Improvement
>  Components: JSR-314
> Environment: myfaces core trunk
>Reporter: Martin Kočí
> Attachments: MYFACES-3130-example.patch
>
>
> Similar issue: MYFACES-3129
> loop from java 5:
> for (Object object: objects)
> creates new instance of AbstractList$Itr, if objects are instance of 
> ArrayList. 
> Similar situation is with explicit .iterator() call.
> In my testcases, it is about ~ 100 000 instances per request/response. 
> Creation itself is cheap, but triggers GC lately.
> I suggest to use old index-style for (i = 0; i < childCount;   i++) if 
> possible. Are there any rawbacks of index-based iteration? 
> Children is List and as implementation detail we  know that it is instance of 
> ArrayList.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] Resolved: (MYFACES-3049) Bean Validation doesn't work with Glassfish el-impl-2.2

2011-02-21 Thread Jan-Kees van Andel (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYFACES-3049?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jan-Kees van Andel resolved MYFACES-3049.
-

   Resolution: Fixed
Fix Version/s: 2.0.5-SNAPSHOT

Fixed. Added the check, fallback and warning as discussed with Jakob.

> Bean Validation doesn't work with Glassfish el-impl-2.2
> ---
>
> Key: MYFACES-3049
> URL: https://issues.apache.org/jira/browse/MYFACES-3049
> Project: MyFaces Core
>  Issue Type: Bug
>  Components: JSR-314
>Affects Versions: 2.0.4
> Environment: Tomcat 2.0.29
>Reporter: Jan-Kees van Andel
>Assignee: Jan-Kees van Andel
> Fix For: 2.0.5-SNAPSHOT
>
>
> I have this expression in my Facelet: #{newPaymentBean.payment.toAccount}
> "payment" resolves to the following:
> @Entity
> public class Payment implements Serializable {
> // More stuff...
> @NotNull @AccountNumber private String toAccount;
> // More stuff...
> }
> When debugging in javax.faces.validator._BeanValidatorUELUtils, I noticed the 
> following on line 47 "ValueReference valueReference = 
> valueExpression.getValueReference(elCtx);":
> * With Glassfish EL, "valueReference.property" is null. This causes the 
> BeanValidator to return at line 161, and to skip validation. 
> "valueReference.base" points to the Payment object btw.
> * With JUEL 2.2.3, "valueReference.property" is "toAccount", which is correct 
> AFAIK.
> I'm not sure whether this is a MyFaces or EL issue. I remember that when I 
> wrote the BeanValidator, that the spec literally said what to do. See: 
> http://javaserverfaces.java.net/nonav/docs/2.0/javadocs/javax/faces/validator/BeanValidator.html#validate(javax.faces.context.FacesContext,
>  javax.faces.component.UIComponent, java.lang.Object)
> So I guess this is an EL implementation issue, but I filed it nevertheless, 
> at least for archiving purposes...
> WDYT?

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] Commented: (MYFACES-3049) Bean Validation doesn't work with Glassfish el-impl-2.2

2011-02-21 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-3049?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12997359#comment-12997359
 ] 

Jan-Kees van Andel commented on MYFACES-3049:
-

Yep, you're right. And I guess we should log a warning (maybe once, to prevent 
trashing the log) to show the user that something is wrong with the 
configuration (b/c it also hurts performance).

> Bean Validation doesn't work with Glassfish el-impl-2.2
> ---
>
> Key: MYFACES-3049
> URL: https://issues.apache.org/jira/browse/MYFACES-3049
> Project: MyFaces Core
>  Issue Type: Bug
>  Components: JSR-314
>Affects Versions: 2.0.4
> Environment: Tomcat 2.0.29
>Reporter: Jan-Kees van Andel
>
> I have this expression in my Facelet: #{newPaymentBean.payment.toAccount}
> "payment" resolves to the following:
> @Entity
> public class Payment implements Serializable {
> // More stuff...
> @NotNull @AccountNumber private String toAccount;
> // More stuff...
> }
> When debugging in javax.faces.validator._BeanValidatorUELUtils, I noticed the 
> following on line 47 "ValueReference valueReference = 
> valueExpression.getValueReference(elCtx);":
> * With Glassfish EL, "valueReference.property" is null. This causes the 
> BeanValidator to return at line 161, and to skip validation. 
> "valueReference.base" points to the Payment object btw.
> * With JUEL 2.2.3, "valueReference.property" is "toAccount", which is correct 
> AFAIK.
> I'm not sure whether this is a MyFaces or EL issue. I remember that when I 
> wrote the BeanValidator, that the spec literally said what to do. See: 
> http://javaserverfaces.java.net/nonav/docs/2.0/javadocs/javax/faces/validator/BeanValidator.html#validate(javax.faces.context.FacesContext,
>  javax.faces.component.UIComponent, java.lang.Object)
> So I guess this is an EL implementation issue, but I filed it nevertheless, 
> at least for archiving purposes...
> WDYT?

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] Commented: (MYFACES-3049) Bean Validation doesn't work with Glassfish el-impl-2.2

2011-02-21 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-3049?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12997347#comment-12997347
 ] 

Jan-Kees van Andel commented on MYFACES-3049:
-

Not sure if we can do this. You added a null-check already to prevent BV to 
validate for example Collections. So adding this fallback will probably break 
this, right?

> Bean Validation doesn't work with Glassfish el-impl-2.2
> ---
>
> Key: MYFACES-3049
> URL: https://issues.apache.org/jira/browse/MYFACES-3049
> Project: MyFaces Core
>  Issue Type: Bug
>  Components: JSR-314
>Affects Versions: 2.0.4
> Environment: Tomcat 2.0.29
>Reporter: Jan-Kees van Andel
>
> I have this expression in my Facelet: #{newPaymentBean.payment.toAccount}
> "payment" resolves to the following:
> @Entity
> public class Payment implements Serializable {
> // More stuff...
> @NotNull @AccountNumber private String toAccount;
> // More stuff...
> }
> When debugging in javax.faces.validator._BeanValidatorUELUtils, I noticed the 
> following on line 47 "ValueReference valueReference = 
> valueExpression.getValueReference(elCtx);":
> * With Glassfish EL, "valueReference.property" is null. This causes the 
> BeanValidator to return at line 161, and to skip validation. 
> "valueReference.base" points to the Payment object btw.
> * With JUEL 2.2.3, "valueReference.property" is "toAccount", which is correct 
> AFAIK.
> I'm not sure whether this is a MyFaces or EL issue. I remember that when I 
> wrote the BeanValidator, that the spec literally said what to do. See: 
> http://javaserverfaces.java.net/nonav/docs/2.0/javadocs/javax/faces/validator/BeanValidator.html#validate(javax.faces.context.FacesContext,
>  javax.faces.component.UIComponent, java.lang.Object)
> So I guess this is an EL implementation issue, but I filed it nevertheless, 
> at least for archiving purposes...
> WDYT?

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] Created: (MYFACES-3049) Bean Validation doesn't work with Glassfish el-impl-2.2

2011-02-21 Thread Jan-Kees van Andel (JIRA)
Bean Validation doesn't work with Glassfish el-impl-2.2
---

 Key: MYFACES-3049
 URL: https://issues.apache.org/jira/browse/MYFACES-3049
 Project: MyFaces Core
  Issue Type: Bug
  Components: JSR-314
Affects Versions: 2.0.4
 Environment: Tomcat 2.0.29
Reporter: Jan-Kees van Andel


I have this expression in my Facelet: #{newPaymentBean.payment.toAccount}

"payment" resolves to the following:

@Entity
public class Payment implements Serializable {

// More stuff...

@NotNull @AccountNumber private String toAccount;

// More stuff...
}

When debugging in javax.faces.validator._BeanValidatorUELUtils, I noticed the 
following on line 47 "ValueReference valueReference = 
valueExpression.getValueReference(elCtx);":

* With Glassfish EL, "valueReference.property" is null. This causes the 
BeanValidator to return at line 161, and to skip validation. 
"valueReference.base" points to the Payment object btw.
* With JUEL 2.2.3, "valueReference.property" is "toAccount", which is correct 
AFAIK.

I'm not sure whether this is a MyFaces or EL issue. I remember that when I 
wrote the BeanValidator, that the spec literally said what to do. See: 
http://javaserverfaces.java.net/nonav/docs/2.0/javadocs/javax/faces/validator/BeanValidator.html#validate(javax.faces.context.FacesContext,
 javax.faces.component.UIComponent, java.lang.Object)

So I guess this is an EL implementation issue, but I filed it nevertheless, at 
least for archiving purposes...

WDYT?

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] Commented: (EXTCDI-92) ConversationUtils.cacheWindowId() ignores session invalidation

2010-12-22 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/EXTCDI-92?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12974363#action_12974363
 ] 

Jan-Kees van Andel commented on EXTCDI-92:
--

Just ran the test again, but now I get the following stack trace when I 
invalidate the session:

javax.enterprise.context.ContextNotActiveException: WebBeans context with scope 
type annotation @SessionScoped does not exist within current thread

org.apache.webbeans.container.BeanManagerImpl.getContext(BeanManagerImpl.java:309)

org.apache.webbeans.intercept.NormalScopedBeanInterceptorHandler.getContextualInstance(NormalScopedBeanInterceptorHandler.java:124)

org.apache.webbeans.intercept.NormalScopedBeanInterceptorHandler.invoke(NormalScopedBeanInterceptorHandler.java:95)

org.javassist.tmp.java.lang.Object_$$_javassist_16.getCurrentWindowContext(Object_$$_javassist_16.java)

org.apache.myfaces.extensions.cdi.jsf.impl.util.ConversationUtils.storeCurrentViewIdAsOldViewId(ConversationUtils.java:222)

org.apache.myfaces.extensions.cdi.jsf.impl.util.ConversationUtils.storeCurrentViewIdAsOldViewId(ConversationUtils.java:215)

org.apache.myfaces.extensions.cdi.jsf.impl.navigation.AccessScopeAwareNavigationHandler.handleNavigation(AccessScopeAwareNavigationHandler.java:49)

org.apache.myfaces.extensions.cdi.jsf2.impl.navigation.CodiNavigationHandler.handleNavigation(CodiNavigationHandler.java:78)

org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:125)

org.apache.myfaces.extensions.cdi.jsf.impl.security.SecurityViolationAwareActionListener.processAction(SecurityViolationAwareActionListener.java:49)

org.apache.myfaces.extensions.cdi.jsf.impl.config.view.ViewControllerActionListener.processAction(ViewControllerActionListener.java:60)

org.apache.myfaces.extensions.cdi.jsf.impl.listener.action.CodiActionListener.processAction(CodiActionListener.java:52)
javax.faces.component.UICommand.broadcast(UICommand.java:120)
javax.faces.component.UIViewRoot._broadcastAll(UIViewRoot.java:969)
javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:275)
javax.faces.component.UIViewRoot._process(UIViewRoot.java:1281)
javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:707)

org.apache.myfaces.lifecycle.InvokeApplicationExecutor.execute(InvokeApplicationExecutor.java:34)

org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:171)

org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)

org.apache.myfaces.extensions.cdi.jsf2.impl.listener.phase.CodiLifecycleWrapper.execute(CodiLifecycleWrapper.java:71)
javax.faces.webapp.FacesServlet.service(FacesServlet.java:189)


> ConversationUtils.cacheWindowId() ignores session invalidation
> --
>
> Key: EXTCDI-92
> URL: https://issues.apache.org/jira/browse/EXTCDI-92
> Project: MyFaces CODI
>  Issue Type: Bug
>  Components: JEE-JSF20-Module
>Affects Versions: 0.9.0
> Environment: MyFaces Core 2.0.3 trunk, OWB 1.0.0, Tomcat 6.0.29 with 
> Glassfish EL libs
>Reporter: Jan-Kees van Andel
> Attachments: EXTCDI-92.patch
>
>
> A while ago, I raised issue MYFACES-2979. I now wanted  to fix and commit it, 
> but I don't get this exception anymore, because I added CODI to my 
> application a while ago.
> Reason: After invalidating, CODI re-initializes the Session, so it's not null 
> anymore and the DebugPhaseListener stuff doesn't throw an exception anymore.
> However, I don't think this behavior is desirable. After all, I've 
> invalidated the session in my application code, so I don't want any framework 
> to re-initialize it without questioning.
> I can't come up with an example of anything that really breaks because of 
> this, but it's not very nice and efficient.
> It happens in the following method:
> org.apache.myfaces.extensions.cdi.jsf.impl.util.ConversationUtils#cacheWindowId()
>  on line 191.
> Wdyt?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (EXTCDI-92) ConversationUtils.cacheWindowId() ignores session invalidation

2010-12-05 Thread Jan-Kees van Andel (JIRA)
ConversationUtils.cacheWindowId() ignores session invalidation
--

 Key: EXTCDI-92
 URL: https://issues.apache.org/jira/browse/EXTCDI-92
 Project: MyFaces CODI
  Issue Type: Bug
  Components: JEE-JSF20-Module
Affects Versions: 0.9.0
 Environment: MyFaces Core 2.0.3 trunk, OWB 1.0.0, Tomcat 6.0.29 with 
Glassfish EL libs
Reporter: Jan-Kees van Andel


A while ago, I raised issue MYFACES-2979. I now wanted  to fix and commit it, 
but I don't get this exception anymore, because I added CODI to my application 
a while ago.

Reason: After invalidating, CODI re-initializes the Session, so it's not null 
anymore and the DebugPhaseListener stuff doesn't throw an exception anymore.

However, I don't think this behavior is desirable. After all, I've invalidated 
the session in my application code, so I don't want any framework to 
re-initialize it without questioning.

I can't come up with an example of anything that really breaks because of this, 
but it's not very nice and efficient.

It happens in the following method:
org.apache.myfaces.extensions.cdi.jsf.impl.util.ConversationUtils#cacheWindowId()
 on line 191.

Wdyt?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2979) Session invalidation in Development Stage causes error in OpenWebBeans

2010-11-21 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2979?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12934293#action_12934293
 ] 

Jan-Kees van Andel commented on MYFACES-2979:
-

IMHO, that would be an unwanted side effect of the PhaseListener.

I'm not sure what the spec says about this (I guess nothing), but recreating a 
session within the same request that invalidated it, would be pretty bad 
behavior if you ask me...

The annoying bit is, if we choose to add a check in the PhaseListener, there 
might be other checks we need to add there.

I suggest to fix it in the PhaseListener, to keep it as much side-effect-free 
as possible.

> Session invalidation in Development Stage causes error in OpenWebBeans
> --
>
> Key: MYFACES-2979
> URL: https://issues.apache.org/jira/browse/MYFACES-2979
> Project: MyFaces Core
>  Issue Type: Bug
>  Components: JSR-314
>Affects Versions: 2.0.3-SNAPSHOT
> Environment: MyFaces 2.0.3-SNAPSHOT in Dev mode, OpenWebBeans 1.0.0, 
> Tomcat 6.0.29 (with Glassfish EL 2.2)
>Reporter: Jan-Kees van Andel
>
> I have a logout method, shown below:
> public String logout() {
> final FacesContext fc = FacesContext.getCurrentInstance();
> final ExternalContext externalContext = fc.getExternalContext();
> try {
> externalContext.invalidateSession();
> externalContext.redirect("http://www.google.nl";);
> } catch (IOException e) {
> log.error("Error redirecting after logout", e);
> } finally {
> fc.responseComplete();
> }
> return null;
> }
> When I invoke this method, I get the following Exception from OpenWebBeans:
> javax.enterprise.context.ContextNotActiveException: WebBeans context with 
> scope type annotation @SessionScoped does not exist within current thread
>   at 
> org.apache.webbeans.container.BeanManagerImpl.getContext(BeanManagerImpl.java:309)
>   at 
> org.apache.webbeans.intercept.NormalScopedBeanInterceptorHandler.getContextualInstance(NormalScopedBeanInterceptorHandler.java:124)
>   at 
> org.apache.webbeans.intercept.NormalScopedBeanInterceptorHandler.invoke(NormalScopedBeanInterceptorHandler.java:95)
>   at 
> org.apache.myfaces.examples.ebanking.web.bean.SessionBean_$$_javassist_2.getCustomer(SessionBean_$$_javassist_2.java)
>   at sun.reflect.GeneratedMethodAccessor37.invoke(Unknown Source)
>   at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>   at java.lang.reflect.Method.invoke(Method.java:597)
>   at javax.el.BeanELResolver.getValue(BeanELResolver.java:302)
>   at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:175)
>   at 
> org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:142)
>   at org.apache.el.parser.AstValue.getValue(AstValue.java:123)
>   at org.apache.el.parser.AstEmpty.getValue(AstEmpty.java:45)
>   at org.apache.el.parser.AstNot.getValue(AstNot.java:42)
>   at 
> org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
>   at 
> org.apache.webbeans.el.WrappedValueExpression.getValue(WrappedValueExpression.java:68)
>   at 
> org.apache.myfaces.view.facelets.el.TagValueExpression.getValue(TagValueExpression.java:85)
>   at 
> javax.faces.component._DeltaStateHelper.eval(_DeltaStateHelper.java:260)
>   at 
> javax.faces.component.UIComponentBase.isRendered(UIComponentBase.java:1007)
>   at javax.faces.component.UIComponent.isVisitable(UIComponent.java:289)
>   at javax.faces.component.UIComponent.visitTree(UIComponent.java:752)
>   at 
> javax.faces.component.UIComponentBase.visitTree(UIComponentBase.java:991)
>   at javax.faces.component.UIComponent.visitTree(UIComponent.java:778)
>   at 
> javax.faces.component.UIComponentBase.visitTree(UIComponentBase.java:991)
>   at 
> org.apache.myfaces.view.facelets.tag.ui.DebugPhaseListener._doTreeVisit(DebugPhaseListener.java:310)
>   at 
> org.apache.myfaces.view.facelets.tag.ui.DebugPhaseListener.afterPhase(DebugPhaseListener.java:286)
>   at 
> org.apache.myfaces.lifecycle.PhaseListenerManager.informPhaseListenersAfter(PhaseListenerManager.java:111)
>   at 
> org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:185)
>   at 
> org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
>   at javax.faces.webapp.FacesServlet.service(FacesServlet.java:189)
> This happens because the DebugPhaseListener starts visiting the tree and, in 
> the process, needs to resolve a value expression, which points to an OWB 
> session bean.
> It only happens when the DebugPhaseListener is installed. In produc

[jira] Created: (MYFACES-2979) Session invalidation in Development Stage causes error in OpenWebBeans

2010-11-21 Thread Jan-Kees van Andel (JIRA)
Session invalidation in Development Stage causes error in OpenWebBeans
--

 Key: MYFACES-2979
 URL: https://issues.apache.org/jira/browse/MYFACES-2979
 Project: MyFaces Core
  Issue Type: Bug
  Components: JSR-314
Affects Versions: 2.0.3-SNAPSHOT
 Environment: MyFaces 2.0.3-SNAPSHOT in Dev mode, OpenWebBeans 1.0.0, 
Tomcat 6.0.29 (with Glassfish EL 2.2)
Reporter: Jan-Kees van Andel


I have a logout method, shown below:

public String logout() {
final FacesContext fc = FacesContext.getCurrentInstance();
final ExternalContext externalContext = fc.getExternalContext();
try {
externalContext.invalidateSession();
externalContext.redirect("http://www.google.nl";);
} catch (IOException e) {
log.error("Error redirecting after logout", e);
} finally {
fc.responseComplete();
}
return null;
}

When I invoke this method, I get the following Exception from OpenWebBeans:

javax.enterprise.context.ContextNotActiveException: WebBeans context with scope 
type annotation @SessionScoped does not exist within current thread
at 
org.apache.webbeans.container.BeanManagerImpl.getContext(BeanManagerImpl.java:309)
at 
org.apache.webbeans.intercept.NormalScopedBeanInterceptorHandler.getContextualInstance(NormalScopedBeanInterceptorHandler.java:124)
at 
org.apache.webbeans.intercept.NormalScopedBeanInterceptorHandler.invoke(NormalScopedBeanInterceptorHandler.java:95)
at 
org.apache.myfaces.examples.ebanking.web.bean.SessionBean_$$_javassist_2.getCustomer(SessionBean_$$_javassist_2.java)
at sun.reflect.GeneratedMethodAccessor37.invoke(Unknown Source)
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at javax.el.BeanELResolver.getValue(BeanELResolver.java:302)
at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:175)
at 
org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:142)
at org.apache.el.parser.AstValue.getValue(AstValue.java:123)
at org.apache.el.parser.AstEmpty.getValue(AstEmpty.java:45)
at org.apache.el.parser.AstNot.getValue(AstNot.java:42)
at 
org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
at 
org.apache.webbeans.el.WrappedValueExpression.getValue(WrappedValueExpression.java:68)
at 
org.apache.myfaces.view.facelets.el.TagValueExpression.getValue(TagValueExpression.java:85)
at 
javax.faces.component._DeltaStateHelper.eval(_DeltaStateHelper.java:260)
at 
javax.faces.component.UIComponentBase.isRendered(UIComponentBase.java:1007)
at javax.faces.component.UIComponent.isVisitable(UIComponent.java:289)
at javax.faces.component.UIComponent.visitTree(UIComponent.java:752)
at 
javax.faces.component.UIComponentBase.visitTree(UIComponentBase.java:991)
at javax.faces.component.UIComponent.visitTree(UIComponent.java:778)
at 
javax.faces.component.UIComponentBase.visitTree(UIComponentBase.java:991)
at 
org.apache.myfaces.view.facelets.tag.ui.DebugPhaseListener._doTreeVisit(DebugPhaseListener.java:310)
at 
org.apache.myfaces.view.facelets.tag.ui.DebugPhaseListener.afterPhase(DebugPhaseListener.java:286)
at 
org.apache.myfaces.lifecycle.PhaseListenerManager.informPhaseListenersAfter(PhaseListenerManager.java:111)
at 
org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:185)
at 
org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:189)

This happens because the DebugPhaseListener starts visiting the tree and, in 
the process, needs to resolve a value expression, which points to an OWB 
session bean.

It only happens when the DebugPhaseListener is installed. In production mode 
everything is fine.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2965) MyFaces 2.0.2 AJAX crashes Safari on iPad

2010-11-07 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2965?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12929360#action_12929360
 ] 

Jan-Kees van Andel commented on MYFACES-2965:
-

Werner has been debugging his AJAX code. This is the result:

ah main difference between android and apple
both of them run their own javascript engine
they are not the same
it is the exists check for send as binary
it runs now
gotta send that bug to apple
all i do is 'undefined' == typeof xhr.sendAsBinary || null == xhr.sendAsBinary
apparently that is enough to crash the xhr object of safari as soon as send is 
called
this is a stupid bug on apples side
either way I will add mobile safari detection and remove that code for mobile 
safari
mobile safari should be sendAsBinary enabled anyway

> MyFaces 2.0.2 AJAX crashes Safari on iPad
> -
>
> Key: MYFACES-2965
> URL: https://issues.apache.org/jira/browse/MYFACES-2965
> Project: MyFaces Core
>  Issue Type: Bug
>  Components: JSR-314
>Affects Versions: 2.0.2
> Environment: iPad Safari
>Reporter: Jan-Kees van Andel
>Assignee: Werner Punz
>
> If you go to http://ipad.parleys.com/parleys-frontend-ipad-1.0/ on your iPad, 
> and then click on the button "Latest", "Top Rated" or some other button that 
> invokes an AJAX request, the browser crashes and goes back to the desktop.
> A simple debugging session pointed me to the jsf.ajax.request() invocation, 
> but that's still pretty broad. Reverting to 2.0.1 solved the issue.
> The code can be viewed online at: 
> http://code.google.com/p/parleys-html5/source/browse/#svn/trunk/web-ipad/src/main/webapp
> Talked offline with Werner about the issue and we think it's somewhere in the 
> 2.0.2 optimizations.
> Werner's first guess: "If you want to check yourself you can set an alert in 
> replacenode in Dom.js and see if the code is reached
> And see if it finishes.
> I am 100 percent sure the problem is there.
> But it is just sixth sense on my part.
> So just a guessing."

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (MYFACES-2965) MyFaces 2.0.2 AJAX crashes Safari on iPad

2010-11-07 Thread Jan-Kees van Andel (JIRA)
MyFaces 2.0.2 AJAX crashes Safari on iPad
-

 Key: MYFACES-2965
 URL: https://issues.apache.org/jira/browse/MYFACES-2965
 Project: MyFaces Core
  Issue Type: Bug
  Components: JSR-314
Affects Versions: 2.0.2
 Environment: iPad Safari
Reporter: Jan-Kees van Andel
Assignee: Werner Punz


If you go to http://ipad.parleys.com/parleys-frontend-ipad-1.0/ on your iPad, 
and then click on the button "Latest", "Top Rated" or some other button that 
invokes an AJAX request, the browser crashes and goes back to the desktop.

A simple debugging session pointed me to the jsf.ajax.request() invocation, but 
that's still pretty broad. Reverting to 2.0.1 solved the issue.

The code can be viewed online at: 
http://code.google.com/p/parleys-html5/source/browse/#svn/trunk/web-ipad/src/main/webapp

Talked offline with Werner about the issue and we think it's somewhere in the 
2.0.2 optimizations.

Werner's first guess: "If you want to check yourself you can set an alert in 
replacenode in Dom.js and see if the code is reached
And see if it finishes.
I am 100 percent sure the problem is there.
But it is just sixth sense on my part.
So just a guessing."

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (MYFACES-2932) More error logging when Bean Validation throws an exception at startup

2010-09-28 Thread Jan-Kees van Andel (JIRA)
More error logging when Bean Validation throws an exception at startup
--

 Key: MYFACES-2932
 URL: https://issues.apache.org/jira/browse/MYFACES-2932
 Project: MyFaces Core
  Issue Type: Improvement
  Components: JSR-314
Affects Versions: 2.0.2
 Environment: Any
Reporter: Jan-Kees van Andel


When the Bean Validation implementation fails to startup, for example because 
it is misconfigured by the developer, or because of some dependency issue 
(missing slf4j jar or something), the Bean Validator automatically turns itself 
off.

The error is logged as "fine", because in many cases the developer doesn't care 
about this behavior. For example, if bean validation api is provided, but impl 
is not. In these cases, logging an error is not desirable.

But maybe this should be increased to "info", to ease debugging in the cases 
where the developer is interested in why bean validation fails to startup.

I guess we change the logging to "info", especially because the block of code 
is guarded by a Class.forName() check, which takes care of the obvious case 
that Bean Validation is unavailable.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2889) [PERF] Remove String.intern() calls in FlashELResolver and ImplicitObjectResolver

2010-08-22 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2889?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12901152#action_12901152
 ] 

Jan-Kees van Andel commented on MYFACES-2889:
-

True, but in these two cases, the (interned) Strings are only used for Map 
lookups. And AFAIK, interning has no effect on the performance of the hashcode 
method...

> [PERF] Remove String.intern() calls in FlashELResolver and 
> ImplicitObjectResolver
> -
>
> Key: MYFACES-2889
> URL: https://issues.apache.org/jira/browse/MYFACES-2889
> Project: MyFaces Core
>  Issue Type: Improvement
>  Components: JSR-314
>Affects Versions: 2.0.2-SNAPSHOT
> Environment: JBoss AS 6 M4, Parleys.com JSF2 app
>Reporter: Jan-Kees van Andel
>
> I've been doing some profiling and I see pretty much activity in 
> FlashELResolver.castAndIntern() and ImplicitObjectResolver.castAndIntern().
> When I replace the "return s.intern()" lines by  "return s", both methods 
> have (of course) much better performance.
> But I'm pretty sure someone put them there with a reason, like memory 
> footprint.
> However, I don't see any difference in memory footprint.
> Any ideas? Do we want to keep the intern() calls?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (MYFACES-2889) [PERF] Remove String.intern() calls in FlashELResolver and ImplicitObjectResolver

2010-08-21 Thread Jan-Kees van Andel (JIRA)
[PERF] Remove String.intern() calls in FlashELResolver and 
ImplicitObjectResolver
-

 Key: MYFACES-2889
 URL: https://issues.apache.org/jira/browse/MYFACES-2889
 Project: MyFaces Core
  Issue Type: Improvement
  Components: JSR-314
Affects Versions: 2.0.2-SNAPSHOT
 Environment: JBoss AS 6 M4, Parleys.com JSF2 app
Reporter: Jan-Kees van Andel


I've been doing some profiling and I see pretty much activity in 
FlashELResolver.castAndIntern() and ImplicitObjectResolver.castAndIntern().
When I replace the "return s.intern()" lines by  "return s", both methods have 
(of course) much better performance.

But I'm pretty sure someone put them there with a reason, like memory footprint.
However, I don't see any difference in memory footprint.

Any ideas? Do we want to keep the intern() calls?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (MYFACES-2871) Remove redundant SVN keywords from class JavaDocs

2010-08-10 Thread Jan-Kees van Andel (JIRA)
Remove redundant SVN keywords from class JavaDocs
-

 Key: MYFACES-2871
 URL: https://issues.apache.org/jira/browse/MYFACES-2871
 Project: MyFaces Core
  Issue Type: Task
  Components: JSR-314
Affects Versions: 2.0.1
Reporter: Jan-Kees van Andel
Assignee: Jan-Kees van Andel
Priority: Minor


Almost all class file JavaDocs now contain SVN keywords. These are redundant 
and after a simple poll on the mailinglist, the conclusion is to remove them 
from the files.

Reference back to the original thread: 
http://markmail.org/thread/tfwvqms4xko3uq2k

Still need to decide how to get rid of this stuff. I think a massive 
find-replace works fine, but there is always a slight risk of big merge 
conflicts.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2861) Remove commons-discovery dependency

2010-08-09 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2861?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12896781#action_12896781
 ] 

Jan-Kees van Andel commented on MYFACES-2861:
-

Hi Martin,

I don't think that will work, since logging is something you can't exclude 
easily. Most classes initialize a logger during (class/object) initialization, 
so you'll end up with a NoClassDef at runtime.

I think we're gonna need the transitive dependency...

/JK

> Remove commons-discovery dependency
> ---
>
> Key: MYFACES-2861
> URL: https://issues.apache.org/jira/browse/MYFACES-2861
> Project: MyFaces Core
>  Issue Type: Improvement
>  Components: JSR-314
>Affects Versions: 2.0.1
>Reporter: Leonardo Uribe
>Assignee: Leonardo Uribe
> Fix For: 2.0.2-SNAPSHOT
>
>
> Commons-discovery has a dependency to commons-logging. That cause a 
> transitive dependency to myfaces-impl. To prevent this dependency, we need to 
> move that code into our codebase and refactor it so it uses jul instead.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2861) Remove commons-discovery dependency

2010-08-09 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2861?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12896779#action_12896779
 ] 

Jan-Kees van Andel commented on MYFACES-2861:
-

Hey Leo,

>From my understanding, the added value of commons-discovery and 
>commons-beanutils is pretty limited. It might be an idea to think about 
>selectively copying some files from both projects into MyFaces?

AFAIK, Discovery is only used to find the LifecycleFactory. We might be able to 
replace this with the Service Provider mechanism.

I'm not sure about all usages of Beanutils though...

/JK

> Remove commons-discovery dependency
> ---
>
> Key: MYFACES-2861
> URL: https://issues.apache.org/jira/browse/MYFACES-2861
> Project: MyFaces Core
>  Issue Type: Improvement
>  Components: JSR-314
>Affects Versions: 2.0.1
>Reporter: Leonardo Uribe
>Assignee: Leonardo Uribe
> Fix For: 2.0.2-SNAPSHOT
>
>
> Commons-discovery has a dependency to commons-logging. That cause a 
> transitive dependency to myfaces-impl. To prevent this dependency, we need to 
> move that code into our codebase and refactor it so it uses jul instead.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2858) pointless oamsubmit inline rendering

2010-08-04 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2858?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12895258#action_12895258
 ] 

Jan-Kees van Andel commented on MYFACES-2858:
-

Never mind. I'll report my thingy in a separate issue. It's not related to your 
externalization.

Sorry for the unclear comment. :-)

> pointless oamsubmit inline rendering
> 
>
> Key: MYFACES-2858
> URL: https://issues.apache.org/jira/browse/MYFACES-2858
> Project: MyFaces Core
>  Issue Type: Bug
>Affects Versions: 2.0.2-SNAPSHOT
>Reporter: Werner Punz
>
> We have had several functions rendered inline for ages, namely 
> appendHiddenInput oamSubmit, the autoscroll stuff etc...
> I personally think the rendering of those functions as inline scripts is 
> pointless, blows up the browsers tremendously and
> prevents that the affected scripts can be browser cached.
> A quick look at the code revealed that there is basically nothing which would 
> prevent to externalize the scripts. My main problem is where to we handle the 
> auto append code.
> My personal guess is we probably simply should add it as a resource 
> definitions to the commandLink, Button etc.. renderers, any ideas regarding 
> this?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2858) pointless oamsubmit inline rendering

2010-08-04 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2858?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12895224#action_12895224
 ] 

Jan-Kees van Andel commented on MYFACES-2858:
-

No opinion regarding externalizing the scripts. I think it's a good idea.

What I did notice a while ago, was that those scripts are very annoying when 
doing AJAX. I didn't look at it in detail, but it looked like they messed up 
the event handling.

> pointless oamsubmit inline rendering
> 
>
> Key: MYFACES-2858
> URL: https://issues.apache.org/jira/browse/MYFACES-2858
> Project: MyFaces Core
>  Issue Type: Bug
>Affects Versions: 2.0.2-SNAPSHOT
>Reporter: Werner Punz
>
> We have had several functions rendered inline for ages, namely 
> appendHiddenInput oamSubmit, the autoscroll stuff etc...
> I personally think the rendering of those functions as inline scripts is 
> pointless, blows up the browsers tremendously and
> prevents that the affected scripts can be browser cached.
> A quick look at the code revealed that there is basically nothing which would 
> prevent to externalize the scripts. My main problem is where to we handle the 
> auto append code.
> My personal guess is we probably simply should add it as a resource 
> definitions to the commandLink, Button etc.. renderers, any ideas regarding 
> this?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (TOMAHAWK-1529) ConcurrentModificationException when using t:selectManyPickList and h:selectOneMenu

2010-07-24 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/TOMAHAWK-1529?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12891983#action_12891983
 ] 

Jan-Kees van Andel commented on TOMAHAWK-1529:
--

I'm pretty sure it has nothing to do with MyFaces...

I've seen issues like this one very often in the field. Most of the time the 
cause was a direct remove action on the collection (not remove() on the 
iterator) while iterating it.
You're passing in a Transformer into CollectionUtils.collect(), somewhere in 
"com.utmb.web.beans.searchController.getsrch1revvals". I can't see the line 
number in the stack trace, but it should be there.
I'm very curious what this Transformer looks like.

> ConcurrentModificationException when using t:selectManyPickList and 
> h:selectOneMenu
> ---
>
> Key: TOMAHAWK-1529
> URL: https://issues.apache.org/jira/browse/TOMAHAWK-1529
> Project: MyFaces Tomahawk
>  Issue Type: Bug
>Affects Versions: 1.1.10-SNAPSHOT
> Environment: Solaris 5.8, Java HotSpot(TM) Server VM (build 
> 1.5.0_05-b05, mixed mode)
> Tomcat 6.0.26 running with Security Manager
> MyFaces 1.1.7
>Reporter: suresh t
>
> I have a backend bean supporting jsf page. It has many components similar to 
> one shown below. where srch1vals is a ArrayList of SelectItem  s
>immediate="true"  value="#{searchController.vSrch1}" 
> styleClass="selectOneMenu">
>value="#{searchController.srch1vals}" />
>   
> There is one other components selectManyPickList that has value 
> set to srch1revvals. srch1revvals clones srch1vals in the Get accesor using 
> CollectionUtils.collect() method.
>size="5"  value="#{searchController.selectedPicks}" 
> valueChangeListener="#{searchController.selectionChanged}" 
> rendered="#{searchController.searchvalsResults}">
>value="#{searchController.srch1revvals}" />
>   
> I am getting occasional ConcurrentModificationException as follows.
> Jul 6, 2010 4:35:38 PM org.apache.catalina.core.ApplicationDispatcher invoke
> SEVERE: Servlet.service() for servlet jsp threw exception
> java.util.ConcurrentModificationException
> at 
> java.util.AbstractList$Itr.checkForComodification(AbstractList.java:4
> 49)
> at java.util.AbstractList$Itr.next(AbstractList.java:420)
> at 
> org.apache.commons.collections.CollectionUtils.collect(CollectionUtil
> s.java:631)
> at 
> org.apache.commons.collections.CollectionUtils.collect(CollectionUtil
> s.java:610)
> at 
> org.apache.commons.collections.CollectionUtils.collect(CollectionUtil
> s.java:575)
> at com.utmb.web.beans.searchController.getsrch1revvals(Unknown Source)
> at sun.reflect.GeneratedMethodAccessor780.invoke(Unknown Source)
> at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
> sorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:585)
> at 
> org.apache.myfaces.el.PropertyResolverImpl.getProperty(PropertyResolv
> erImpl.java:459)
> at 
> org.apache.myfaces.el.PropertyResolverImpl.getValue(PropertyResolverI
> mpl.java:85)
> at 
> org.apache.myfaces.el.ELParserHelper$MyPropertySuffix.evaluate(ELPars
> erHelper.java:539)
> at org.apache.commons.el.ComplexValue.evaluate(ComplexValue.java:145)
> at 
> org.apache.myfaces.el.ValueBindingImpl.getValue(ValueBindingImpl.java
> :386)
> at 
> javax.faces.component.UISelectItems.getValue(UISelectItems.java:108)
> at 
> org.apache.myfaces.shared_tomahawk.util.SelectItemsIterator.hasNext(S
> electItemsIterator.java:127)
> at 
> org.apache.myfaces.shared_tomahawk.renderkit.RendererUtils.internalGe
> tSelectItemList(RendererUtils.java:462)
> at 
> org.apache.myfaces.shared_tomahawk.renderkit.RendererUtils.getSelectI
> temList(RendererUtils.java:448)
> at 
> org.apache.myfaces.custom.picklist.HtmlPicklistRenderer.encodeEnd(Htm
> lPicklistRenderer.java:161)
> at 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:
> 775)
> at 
> org.apache.myfaces.shared_tomahawk.renderkit.RendererUtils.renderChil
> d(RendererUtils.java:431)
> at 
> org.apache.myfaces.shared_tomahawk.renderkit.html.HtmlGridRendererBas
> e.renderChildren(HtmlGridRendererBase.java:229)
> at 
> org.apache.myfaces.shared_tomahawk.renderkit.html.HtmlGridRendererBas
> e.encodeEnd(HtmlGridRendererBase.java:101)
> at 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:
> 775)
> at 
> org.apache.myfaces.shared_tomahawk.renderkit.RendererUtils.renderChil
> d

[jira] Issue Comment Edited: (TOMAHAWK-1529) ConcurrentModificationException when using t:selectManyPickList and h:selectOneMenu

2010-07-24 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/TOMAHAWK-1529?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12891983#action_12891983
 ] 

Jan-Kees van Andel edited comment on TOMAHAWK-1529 at 7/24/10 10:12 AM:


I'm pretty sure it has nothing to do with MyFaces...

I've seen issues like this one very often in the field. Most of the time the 
cause was a direct remove action on the collection (not remove() on the 
iterator) while iterating it.
You're passing in a Transformer into CollectionUtils.collect(), somewhere in 
"com.utmb.web.beans.searchController.getsrch1revvals". I can't see the line 
number in the stack trace, but it should be there.
I'm very curious what this Transformer looks like. And of course a bit of 
context, like the "getsrch1revvals" method...

  was (Author: jankeesvanandel):
I'm pretty sure it has nothing to do with MyFaces...

I've seen issues like this one very often in the field. Most of the time the 
cause was a direct remove action on the collection (not remove() on the 
iterator) while iterating it.
You're passing in a Transformer into CollectionUtils.collect(), somewhere in 
"com.utmb.web.beans.searchController.getsrch1revvals". I can't see the line 
number in the stack trace, but it should be there.
I'm very curious what this Transformer looks like.
  
> ConcurrentModificationException when using t:selectManyPickList and 
> h:selectOneMenu
> ---
>
> Key: TOMAHAWK-1529
> URL: https://issues.apache.org/jira/browse/TOMAHAWK-1529
> Project: MyFaces Tomahawk
>  Issue Type: Bug
>Affects Versions: 1.1.10-SNAPSHOT
> Environment: Solaris 5.8, Java HotSpot(TM) Server VM (build 
> 1.5.0_05-b05, mixed mode)
> Tomcat 6.0.26 running with Security Manager
> MyFaces 1.1.7
>Reporter: suresh t
>
> I have a backend bean supporting jsf page. It has many components similar to 
> one shown below. where srch1vals is a ArrayList of SelectItem  s
>immediate="true"  value="#{searchController.vSrch1}" 
> styleClass="selectOneMenu">
>value="#{searchController.srch1vals}" />
>   
> There is one other components selectManyPickList that has value 
> set to srch1revvals. srch1revvals clones srch1vals in the Get accesor using 
> CollectionUtils.collect() method.
>size="5"  value="#{searchController.selectedPicks}" 
> valueChangeListener="#{searchController.selectionChanged}" 
> rendered="#{searchController.searchvalsResults}">
>value="#{searchController.srch1revvals}" />
>   
> I am getting occasional ConcurrentModificationException as follows.
> Jul 6, 2010 4:35:38 PM org.apache.catalina.core.ApplicationDispatcher invoke
> SEVERE: Servlet.service() for servlet jsp threw exception
> java.util.ConcurrentModificationException
> at 
> java.util.AbstractList$Itr.checkForComodification(AbstractList.java:4
> 49)
> at java.util.AbstractList$Itr.next(AbstractList.java:420)
> at 
> org.apache.commons.collections.CollectionUtils.collect(CollectionUtil
> s.java:631)
> at 
> org.apache.commons.collections.CollectionUtils.collect(CollectionUtil
> s.java:610)
> at 
> org.apache.commons.collections.CollectionUtils.collect(CollectionUtil
> s.java:575)
> at com.utmb.web.beans.searchController.getsrch1revvals(Unknown Source)
> at sun.reflect.GeneratedMethodAccessor780.invoke(Unknown Source)
> at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
> sorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:585)
> at 
> org.apache.myfaces.el.PropertyResolverImpl.getProperty(PropertyResolv
> erImpl.java:459)
> at 
> org.apache.myfaces.el.PropertyResolverImpl.getValue(PropertyResolverI
> mpl.java:85)
> at 
> org.apache.myfaces.el.ELParserHelper$MyPropertySuffix.evaluate(ELPars
> erHelper.java:539)
> at org.apache.commons.el.ComplexValue.evaluate(ComplexValue.java:145)
> at 
> org.apache.myfaces.el.ValueBindingImpl.getValue(ValueBindingImpl.java
> :386)
> at 
> javax.faces.component.UISelectItems.getValue(UISelectItems.java:108)
> at 
> org.apache.myfaces.shared_tomahawk.util.SelectItemsIterator.hasNext(S
> electItemsIterator.java:127)
> at 
> org.apache.myfaces.shared_tomahawk.renderkit.RendererUtils.internalGe
> tSelectItemList(RendererUtils.java:462)
> at 
> org.apache.myfaces.shared_tomahawk.renderkit.RendererUtils.getSelectI
> temList(RendererUtils.java:448)
> at 
> org.apache.myfaces.custom.picklist.HtmlPicklistRenderer.encodeEnd(Htm
> lPicklistRenderer.java:161)

[jira] Commented: (MYFACES-2827) CCE if component values are not of type String

2010-07-19 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2827?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12889870#action_12889870
 ] 

Jan-Kees van Andel commented on MYFACES-2827:
-

I see I made a mistake. I guess that's what you get when looking at code 
through a web interface instead of an IDE... ;-)

valueProperty must be a String because we need to pass it to the 
validateValue() method as a String. This is the JSR303 API, so we can't change 
this.
For reference: 
http://download.oracle.com/docs/cd/E17410_01/javaee/6/api/javax/validation/Validator.html#validateValue(java.lang.Class,
 java.lang.String, java.lang.Object, java.lang.Class...)

With regards ot Jakob's comment: "check if reference.getProperty() is a String 
before doing the whole initialisation"
We can do this, but what do we do in this case? Just skip the call to 
validateValue()?

I must say, it sounds reasonable on first thought, because we can't validate it 
anyway. Also, this situation should never occur in the case of a Bean, since 
the property name in a Bean is always a String.
If it's not a String ==> it's not a Bean ==> we don't have to "Bean-validate" 
it...

So +1, but I'm probably not seeing all consequences right now. I guess we 
should just fix it this way and see how it turns out in practice.

Mark can do the regression testing. ;-)

> CCE if component values are not of type String
> --
>
> Key: MYFACES-2827
> URL: https://issues.apache.org/jira/browse/MYFACES-2827
> Project: MyFaces Core
>  Issue Type: Bug
>Affects Versions: 2.0.1
>Reporter: Mark Struberg
>Assignee: Jakob Korherr
> Attachments: MYFACES-2827.patch
>
>
> Somehow I did get a Long into my component. This leads to the following 
> Exception:
> java.lang.ClassCastException: java.lang.Long cannot be cast to 
> java.lang.String
>   at javax.faces.validator.BeanValidator.validate(BeanValidator.java:145)
>   at 
> javax.faces.component._ComponentUtils.callValidators(_ComponentUtils.java:173)
>   at javax.faces.component.UIInput.validateValue(UIInput.java:425)
>   at javax.faces.component.UIInput.validate(UIInput.java:537)
>   at javax.faces.component.UIInput.processValidators(UIInput.java:240)
>   at javax.faces.component.UIData.process(UIData.java:1043)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2827) CCE if component values are not of type String

2010-07-19 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2827?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12889863#action_12889863
 ] 

Jan-Kees van Andel commented on MYFACES-2827:
-

So, I guess the fix for this issue is to add some extra code to BeanValidator 
to check if the targeted object is a constrained object.

The current code is:
final Class valueBaseClass = base.getClass();
final String valueProperty = (String) reference.getProperty();
if (valueBaseClass == null || valueProperty == null)
{
return;
}

// Initialize Bean Validation.
final ValidatorFactory validatorFactory = 
createValidatorFactory(context);
final javax.validation.Validator validator = 
createValidator(validatorFactory);
final BeanDescriptor beanDescriptor = 
validator.getConstraintsForClass(valueBaseClass);
if (!beanDescriptor.isBeanConstrained())
{
return;
}

But we might be able to rewrite it to:
final Class valueBaseClass = base.getClass();
if (valueBaseClass == null)
{
return;
}

// Initialize Bean Validation.
final ValidatorFactory validatorFactory = 
createValidatorFactory(context);
final javax.validation.Validator validator = 
createValidator(validatorFactory);
final BeanDescriptor beanDescriptor = 
validator.getConstraintsForClass(valueBaseClass);
if (!beanDescriptor.isBeanConstrained())
{
return;
}
final String valueProperty = (String) reference.getProperty();

According to the spec, we should be able to remove the null-check on 
valueProperty.

> CCE if component values are not of type String
> --
>
> Key: MYFACES-2827
> URL: https://issues.apache.org/jira/browse/MYFACES-2827
> Project: MyFaces Core
>  Issue Type: Bug
>Affects Versions: 2.0.1
>Reporter: Mark Struberg
>Assignee: Jakob Korherr
>
> Somehow I did get a Long into my component. This leads to the following 
> Exception:
> java.lang.ClassCastException: java.lang.Long cannot be cast to 
> java.lang.String
>   at javax.faces.validator.BeanValidator.validate(BeanValidator.java:145)
>   at 
> javax.faces.component._ComponentUtils.callValidators(_ComponentUtils.java:173)
>   at javax.faces.component.UIInput.validateValue(UIInput.java:425)
>   at javax.faces.component.UIInput.validate(UIInput.java:537)
>   at javax.faces.component.UIInput.processValidators(UIInput.java:240)
>   at javax.faces.component.UIData.process(UIData.java:1043)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Issue Comment Edited: (MYFACES-2827) CCE if component values are not of type String

2010-07-19 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2827?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12889863#action_12889863
 ] 

Jan-Kees van Andel edited comment on MYFACES-2827 at 7/19/10 9:52 AM:
--

So, I guess the fix for this issue is to remove some code from BeanValidator.

The current code is:
final Class valueBaseClass = base.getClass();
final String valueProperty = (String) reference.getProperty();
if (valueBaseClass == null || valueProperty == null)
{
return;
}

// Initialize Bean Validation.
final ValidatorFactory validatorFactory = 
createValidatorFactory(context);
final javax.validation.Validator validator = 
createValidator(validatorFactory);
final BeanDescriptor beanDescriptor = 
validator.getConstraintsForClass(valueBaseClass);
if (!beanDescriptor.isBeanConstrained())
{
return;
}

But we can rewrite it to:
final Class valueBaseClass = base.getClass();
if (valueBaseClass == null)
{
return;
}

// Initialize Bean Validation.
final ValidatorFactory validatorFactory = 
createValidatorFactory(context);
final javax.validation.Validator validator = 
createValidator(validatorFactory);
final BeanDescriptor beanDescriptor = 
validator.getConstraintsForClass(valueBaseClass);
if (!beanDescriptor.isBeanConstrained())
{
return;
}
final String valueProperty = (String) reference.getProperty();

According to the spec, we should be able to remove the null-check on 
valueProperty.

  was (Author: jankeesvanandel):
So, I guess the fix for this issue is to add some extra code to 
BeanValidator to check if the targeted object is a constrained object.

The current code is:
final Class valueBaseClass = base.getClass();
final String valueProperty = (String) reference.getProperty();
if (valueBaseClass == null || valueProperty == null)
{
return;
}

// Initialize Bean Validation.
final ValidatorFactory validatorFactory = 
createValidatorFactory(context);
final javax.validation.Validator validator = 
createValidator(validatorFactory);
final BeanDescriptor beanDescriptor = 
validator.getConstraintsForClass(valueBaseClass);
if (!beanDescriptor.isBeanConstrained())
{
return;
}

But we might be able to rewrite it to:
final Class valueBaseClass = base.getClass();
if (valueBaseClass == null)
{
return;
}

// Initialize Bean Validation.
final ValidatorFactory validatorFactory = 
createValidatorFactory(context);
final javax.validation.Validator validator = 
createValidator(validatorFactory);
final BeanDescriptor beanDescriptor = 
validator.getConstraintsForClass(valueBaseClass);
if (!beanDescriptor.isBeanConstrained())
{
return;
}
final String valueProperty = (String) reference.getProperty();

According to the spec, we should be able to remove the null-check on 
valueProperty.
  
> CCE if component values are not of type String
> --
>
> Key: MYFACES-2827
> URL: https://issues.apache.org/jira/browse/MYFACES-2827
> Project: MyFaces Core
>  Issue Type: Bug
>Affects Versions: 2.0.1
>Reporter: Mark Struberg
>Assignee: Jakob Korherr
>
> Somehow I did get a Long into my component. This leads to the following 
> Exception:
> java.lang.ClassCastException: java.lang.Long cannot be cast to 
> java.lang.String
>   at javax.faces.validator.BeanValidator.validate(BeanValidator.java:145)
>   at 
> javax.faces.component._ComponentUtils.callValidators(_ComponentUtils.java:173)
>   at javax.faces.component.UIInput.validateValue(UIInput.java:425)
>   at javax.faces.component.UIInput.validate(UIInput.java:537)
>   at javax.faces.component.UIInput.processValidators(UIInput.java:240)
>   at javax.faces.component.UIData.process(UIData.java:1043)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2827) CCE if component values are not of type String

2010-07-19 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2827?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12889834#action_12889834
 ] 

Jan-Kees van Andel commented on MYFACES-2827:
-

I can't imagine the String assumption being wrong, so can you please add some 
info regarding how you got that Long into your component?

Like: 
- Are you in a JEE6 container (with the new Unified EL)?
- Are you using bean validation inside a composite component?
- Do you have some code to show what you're doing?

> CCE if component values are not of type String
> --
>
> Key: MYFACES-2827
> URL: https://issues.apache.org/jira/browse/MYFACES-2827
> Project: MyFaces Core
>  Issue Type: Bug
>Affects Versions: 2.0.1
>Reporter: Mark Struberg
>
> Somehow I did get a Long into my component. This leads to the following 
> Exception:
> java.lang.ClassCastException: java.lang.Long cannot be cast to 
> java.lang.String
>   at javax.faces.validator.BeanValidator.validate(BeanValidator.java:145)
>   at 
> javax.faces.component._ComponentUtils.callValidators(_ComponentUtils.java:173)
>   at javax.faces.component.UIInput.validateValue(UIInput.java:425)
>   at javax.faces.component.UIInput.validate(UIInput.java:537)
>   at javax.faces.component.UIInput.processValidators(UIInput.java:240)
>   at javax.faces.component.UIData.process(UIData.java:1043)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (MYFACES-2826) NPE when using the new UEL inside a composite component in Glassfish 3.0.1

2010-07-18 Thread Jan-Kees van Andel (JIRA)
NPE when using the new UEL inside a composite component in Glassfish 3.0.1
--

 Key: MYFACES-2826
 URL: https://issues.apache.org/jira/browse/MYFACES-2826
 Project: MyFaces Core
  Issue Type: Bug
  Components: JSR-314
Affects Versions: 2.0.1
 Environment: glassfish3.0.1
Reporter: Jan-Kees van Andel


When I write a composite component like this one:
http://www.w3.org/1999/xhtml";
  xmlns:f="http://java.sun.com/jsf/core";
  xmlns:h="http://java.sun.com/jsf/html";
  xmlns:p="http://www.parleys.com/jsf/taglib";
  xmlns:composite="http://java.sun.com/jsf/composite";>










And I use it in my page like this:


I get the following NPE:

[#|2010-07-18T15:27:08.227+0200|SEVERE|glassfish3.0.1|org.apache.myfaces.renderkit.ErrorPageWriter|_ThreadID=27;_ThreadName=Thread-1;|An
 exception occurred
javax.faces.FacesException: java.lang.NullPointerException
at 
org.apache.myfaces.shared_impl.context.ExceptionHandlerImpl.wrap(ExceptionHandlerImpl.java:241)
at 
org.apache.myfaces.shared_impl.context.ExceptionHandlerImpl.handle(ExceptionHandlerImpl.java:156)
at 
org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:191)
at 
org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:189)
at 
org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1523)
at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:279)
at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:188)
at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:641)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:97)
at 
com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:85)
at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:185)
at 
org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:325)
at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:226)
at 
com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:165)
at 
com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:791)
at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:693)
at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:954)
at 
com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:170)
at 
com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:135)
at 
com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:102)
at 
com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:88)
at 
com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:76)
at 
com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:53)
at 
com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:57)
at com.sun.grizzly.ContextTask.run(ContextTask.java:69)
at 
com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:330)
at 
com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:309)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.NullPointerException
at 
org.apache.myfaces.view.facelets.el.ValueExpressionMethodExpression.getExpressionString(ValueExpressionMethodExpression.java:70)
at 
org.apache.myfaces.view.facelets.el.TagMethodExpression.getExpressionString(TagMethodExpression.java:101)
at 
javax.faces.component._MethodExpressionToMethodBinding.getExpressionString(_MethodExpressionToMethodBinding.java:60)
at 
org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:97)
at javax.faces.component.UICommand.broadcast(UICommand.java:120)
at javax.faces.component.UIViewRoot._broadcastAll(UIViewRoot.java:889)
at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:238)
at javax.faces.component.UIViewRoot._process(UIViewRoot.java:1201)
at 
javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:627)
at 
org.apache.myfaces.lifecycle.InvokeApplicationExecutor.execute(InvokeApplicationExecutor.java:34)
at 
org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:171)
... 26 more

I am using Glassfish 3.0.1, with the Sun UEL implementation. It works when I 
disable MyFaces and use Mojarra.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to th

[jira] Commented: (MYFACES-2798) javax.faces.VALIDATE_EMPTY_FIELDS default should be 'true'

2010-07-08 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2798?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12886320#action_12886320
 ] 

Jan-Kees van Andel commented on MYFACES-2798:
-

The corresponding section from the JSF spec (chapter 11.1.3 Application 
Configuration Parameters):

"... If the param is not set, the system must behave as if the param was set 
with the value "auto". ..."

> javax.faces.VALIDATE_EMPTY_FIELDS default should be 'true'
> --
>
> Key: MYFACES-2798
> URL: https://issues.apache.org/jira/browse/MYFACES-2798
> Project: MyFaces Core
>  Issue Type: Improvement
>  Components: General
>Affects Versions: 2.0.2-SNAPSHOT
> Environment: Win XP, JDK 1.6.0.20, Maven 2.2.1, MyFaces trunk 
>Reporter: Oliver Bayer
>
> First I thought the validation tags like e.g.  or 
>  aren't working. But during debugging I found out that 
> the respective validation classes are called if at least one char is inserted.
> At the myfaces homepage 
> (http://myfaces.apache.org/core20/myfaces-impl/webconfig.html) I've found 
> that the default is "auto".
> I think it would be better to set the default to "true" because one would 
> expect to get an exception if he leaves a required field blank which isn't 
> the case if it's set to "auto".

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2780) MyFaces performance improvements for production

2010-07-07 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2780?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12885873#action_12885873
 ] 

Jan-Kees van Andel commented on MYFACES-2780:
-

Lazy loading in itself is not a bad idea. Loading objects you're not using 
anyway is a waste of space and CPU, also at runtime, because the framework must 
look at more objects when, for example, doing a Converter lookup.

I'm just curious about how you're planning to implement this feature, because 
lazy loading requires some kind of coordination, which might become a 
bottleneck...

> MyFaces performance improvements for production 
> 
>
> Key: MYFACES-2780
> URL: https://issues.apache.org/jira/browse/MYFACES-2780
> Project: MyFaces Core
>  Issue Type: Improvement
>  Components: General
>Affects Versions: 2.0.0
>Reporter: Michael Concini
>Assignee: Michael Concini
>Priority: Minor
> Fix For: 2.0.1
>
>
> Several fixes to enhance startup memory footprint and runtime performance 
> taking advantage of ProjectStage.
> -lazy loading of validators, converters, behaviors,components - can have a 
> substantial impact on startup footprint in applications with multiple or very 
> large widget libraries.
> Turn off some updating of resources for ProjectStage=Production by default 
> (can always override using javax.faces.FACELETS_REFRESH_PERIOD)
> -change default facelets refresh interval to -1 when projectStage is 
> production.  This by itself gains a 60% improvement in throughput.
> -disable reloading of web.xml and faces-config after the first load.  
> -store a map to cache Class to listenerFor and resourceDependency annotations 
> when in production.  

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (MYFACES-2784) NPE when I forget to add an interface to a composite component

2010-07-03 Thread Jan-Kees van Andel (JIRA)
NPE when I forget to add an interface to a composite component
--

 Key: MYFACES-2784
 URL: https://issues.apache.org/jira/browse/MYFACES-2784
 Project: MyFaces Core
  Issue Type: Bug
Reporter: Jan-Kees van Andel


When I write a composite component like the following:




Spaces










I get a NPE on line 1101 in ApplicationImpl, because there is no component 
metadata. Of course I made a mistake here, but a NPE isn't very helpful. :)

There is a "SEVERE: Cannot found composite bean descriptor 
UIComponent.BEANINFO_KEY" in the logs, but it's swallowed by a huge stack trace.

I suggest to throw a descriptive exception instead of logging the message.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2737) Cache FacesContext on UIComponentBase instances

2010-05-26 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2737?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12872100#action_12872100
 ] 

Jan-Kees van Andel commented on MYFACES-2737:
-

I agree with Martin. It looks good.

Normally I'm quite keen on concurrency bugs (like putting non-threadsafe 
classes in the session), but this approach where you manually keep the 
FacesContext instance request scoped, looks safe.

How many FacesContext.getCurrentInstance calls do you expect to save by this 
approach?

> Cache FacesContext on UIComponentBase instances
> ---
>
> Key: MYFACES-2737
> URL: https://issues.apache.org/jira/browse/MYFACES-2737
> Project: MyFaces Core
>  Issue Type: Improvement
>  Components: JSR-314
>Affects Versions: 2.0.0
>Reporter: Leonardo Uribe
>Assignee: Leonardo Uribe
> Attachments: MYFACES-2737-1.patch
>
>
> Right now, the implementation of UIComponentBase.getFacesContext() is this:
> @Override
> protected FacesContext getFacesContext()
> {
>  return FacesContext.getCurrentInstance();
> }
> I think it is possible to create a variable like this:
> private transient FacesContext _facesContext;
> and change the current implementation to:
> void setCachedFacesContext(FacesContext facesContext)
> {
> _facesContext = facesContext;
> }
> @Override
> protected FacesContext getFacesContext()
> {
> if (_facesContext == null)
> {
> return FacesContext.getCurrentInstance();
> }
> else
> {
> return _facesContext;
> }
> }
> Then we do this on methods like processXXX, encodeXXX (not on encodeAll), 
> visitTree and invokeOnComponent:
> @Override
> public void processDecodes(FacesContext context)
> {
> try
> {
> setCachedFacesContext(context);
>  
>  /*.. do what is required */
> }
> finally
> {
> popComponentFromEL(context);
> 
> setCachedFacesContext(null);
> }
> In few words, set and release temporally the variable while those operations 
> are executed. This change will reduce the amount of calls to 
> FacesContext.getCurrentInstance() without side effects, because we are 
> caching only on safe places and enclosing everything in a try finally block.
> If no objections I'll commit this code soon.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2714) Include uncompressed jsf.js file and use it when development mode is used

2010-05-17 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2714?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12868108#action_12868108
 ] 

Jan-Kees van Andel commented on MYFACES-2714:
-

Hi Leonardo,

I don't see any issues, except two small ones:

1 The SNAPSHOT dependency for the JS plugin

2 The line: log.fine("Cannot evaluate EL expression 
"+convertToExpression(expressionList)+ " in resource " + 
getLibraryName()+":"+getResourceName());
looks like it "swallows" EL errors. I see that an event is published, but it 
looks like some information is lost in the event.
Log.error might be more appropriate.

But, I must admit, I have only looked at the code, I haven't tested it in a 
running application.

I'm +1 on committing this patch.

> Include uncompressed jsf.js file and use it when development mode is used
> -
>
> Key: MYFACES-2714
> URL: https://issues.apache.org/jira/browse/MYFACES-2714
> Project: MyFaces Core
>  Issue Type: Improvement
>  Components: JSR-314
>Affects Versions: 2.0.0
>Reporter: Leonardo Uribe
>Assignee: Leonardo Uribe
> Attachments: MYFACES-2714-2.patch, MYFACES-2714-3.patch
>
>
> Reading some blogs about jsf 2.0, I notice mojarra include an uncompressed 
> jsf.js file and use it when development mode is used. It is difficult to 
> debug myfaces javascript for users and I think it is worth to do it too.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2714) Include uncompressed jsf.js file and use it when development mode is used

2010-05-16 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2714?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12868098#action_12868098
 ] 

Jan-Kees van Andel commented on MYFACES-2714:
-

For archiving, this is the email conversation:

--
Jan-Kees van Andel aan MyFaces
details weergeven 15 mei (2 dagen geleden)
The plan sounds good, but let's not forget the performance penalty of loading 
multiple javascript files when in production mode. No objections for loading 
multiple files in development mode.

Maybe, we should even (from a security perspective) completely deny access to 
the debug versions of the scripts when in production mode.

My 2 cents...

Regards,
Jan-Kees

--
Michael Concini aan MyFaces
details weergeven 15 mei (2 dagen geleden)
I think Jan-Kees has a good point on denying access to the debug versions when 
in production mode.  At least by default it might be good to deny access.  

--

Definitely +1 from my side regarding this, debug versions
should definitely be for development mode only.

Werner

--
Hi

I have attached a patch (MYFACES-2714-3.patch) that do what was suggested by 
Werner, including do not allow retrieve the javascript sources on production.

Please, take a look at this one and if no objections, I'll commit the code.

regards,

Leonardo Uribe

> Include uncompressed jsf.js file and use it when development mode is used
> -
>
> Key: MYFACES-2714
> URL: https://issues.apache.org/jira/browse/MYFACES-2714
> Project: MyFaces Core
>  Issue Type: Improvement
>  Components: JSR-314
>Affects Versions: 2.0.0
>Reporter: Leonardo Uribe
>Assignee: Leonardo Uribe
> Attachments: MYFACES-2714-2.patch, MYFACES-2714-3.patch
>
>
> Reading some blogs about jsf 2.0, I notice mojarra include an uncompressed 
> jsf.js file and use it when development mode is used. It is difficult to 
> debug myfaces javascript for users and I think it is worth to do it too.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (EXTSCRIPT-130) JSF 2.0 composite components are not picked up

2010-05-05 Thread Jan-Kees van Andel (JIRA)
JSF 2.0 composite components are not picked up
--

 Key: EXTSCRIPT-130
 URL: https://issues.apache.org/jira/browse/EXTSCRIPT-130
 Project: MyFaces Extensions Scripting
  Issue Type: Bug
  Components: MyFaces 2.0 Extension
Affects Versions: Beta-1
 Environment: Windows Vista x64, Java 1.6.0_14, Maven Jetty Plugin
Reporter: Jan-Kees van Andel
Assignee: Werner Punz


When I change (or add) a composite component, the change is not picked up. 
After a server restart the file is loaded.

Normal Facelet files are picked up correctly, also included files, like the 
page template.

I have configured all entries in web.xml and both JSF and Facelets are in 
development mode.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (EXTSCRIPT-116) NPE during reload in Maven Jetty Plugin

2010-04-19 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/EXTSCRIPT-116?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12858484#action_12858484
 ] 

Jan-Kees van Andel commented on EXTSCRIPT-116:
--

I might do that. Also a good way to start learning the internals of ExtScript. 
But, for now, I'm very happy.

Good enough for an 1.0 release IMHO.

> NPE during reload in Maven Jetty Plugin
> ---
>
> Key: EXTSCRIPT-116
> URL: https://issues.apache.org/jira/browse/EXTSCRIPT-116
> Project: MyFaces Extensions Scripting
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 1.0-Beta-2
>Reporter: Jan-Kees van Andel
>Assignee: Werner Punz
> Fix For: 1.0-Beta-2
>
>
> I'm still trying to find out the best way to use the Maven Jetty Plugin, so I 
> might be doing something wrong on this side here.
> Nevertheless, when I run mvn package on my project while the server is 
> running (to update dependent libraries to the server), I get the following 
> error:
> [INFO] Restarting webapp
> 18-apr-2010 21:24:02 org.apache.myfaces.webapp.StartupServletContextListener 
> dispatchInitializationEvent
> INFO: Processing 
> plugin:org.apache.myfaces.extensions.scripting.servlet.StartupServletContextPluginChainLoader
> 18-apr-2010 21:24:02 org.apache.myfaces.webapp.StartupServletContextListener 
> dispatchInitializationEvent
> INFO: Processing MyFaces plugins done
> 18-apr-2010 21:24:02 
> org.apache.myfaces.extensions.scripting.core.util.WeavingContext getWeaver
> WARNING: [EXT-SCRIPTING] Scripting Weaver is not set. Disabling script 
> reloading subsystem. Make sure you have the scripting servlet filter enabled 
> in your web.xml
> 2010-04-18 21:24:02.920::WARN:  failed 
> org.mortbay.jetty.plugin.jetty6pluginwebappcont...@63f5af{/html5parleys,D:\dev\work\idea9\parleys\web-html5\target\parleys-frontend-html5-0.1-SNAPSHOT}
> java.lang.NullPointerException
>   at 
> org.apache.myfaces.extensions.scripting.jsf.dynamicdecorators.implemetations.FacesContextProxy.weaveDelegate(FacesContextProxy.java:54)
>   at 
> org.apache.myfaces.extensions.scripting.jsf.dynamicdecorators.implemetations.FacesContextProxy.(FacesContextProxy.java:140)
>   at 
> org.apache.myfaces.extensions.scripting.jsf.dynamicdecorators.factories.ScriptingFacesContextFactory.getFacesContext(ScriptingFacesContextFactory.java:52)
>   at 
> org.apache.myfaces.webapp.AbstractFacesInitializer.dispatchInitDestroyEvent(AbstractFacesInitializer.java:195)
>   at 
> org.apache.myfaces.webapp.AbstractFacesInitializer.destroyFaces(AbstractFacesInitializer.java:204)
>   at 
> org.apache.myfaces.webapp.StartupServletContextListener.contextDestroyed(StartupServletContextListener.java:215)
>   at 
> org.mortbay.jetty.handler.ContextHandler.doStop(ContextHandler.java:599)
>   at org.mortbay.jetty.webapp.WebAppContext.doStop(WebAppContext.java:498)
>   at 
> org.mortbay.jetty.plugin.Jetty6PluginWebAppContext.doStop(Jetty6PluginWebAppContext.java:132)
>   at 
> org.mortbay.component.AbstractLifeCycle.stop(AbstractLifeCycle.java:78)
>   at 
> org.mortbay.jetty.plugin.Jetty6RunWarExploded.restartWebApp(Jetty6RunWarExploded.java:118)
>   at 
> org.mortbay.jetty.plugin.Jetty6RunWarExploded$1.filesChanged(Jetty6RunWarExploded.java:100)
>   at org.mortbay.util.Scanner.reportBulkChanges(Scanner.java:486)
>   at org.mortbay.util.Scanner.reportDifferences(Scanner.java:352)
>   at org.mortbay.util.Scanner.scan(Scanner.java:280)
>   at org.mortbay.util.Scanner$1.run(Scanner.java:232)
>   at java.util.TimerThread.mainLoop(Timer.java:512)
>   at java.util.TimerThread.run(Timer.java:462)
> [ERROR] Error reconfiguring/restarting webapp after change in watched files
> java.lang.NullPointerException
>   at 
> org.apache.myfaces.extensions.scripting.jsf.dynamicdecorators.implemetations.FacesContextProxy.weaveDelegate(FacesContextProxy.java:54)
>   at 
> org.apache.myfaces.extensions.scripting.jsf.dynamicdecorators.implemetations.FacesContextProxy.(FacesContextProxy.java:140)
>   at 
> org.apache.myfaces.extensions.scripting.jsf.dynamicdecorators.factories.ScriptingFacesContextFactory.getFacesContext(ScriptingFacesContextFactory.java:52)
>   at 
> org.apache.myfaces.webapp.AbstractFacesInitializer.dispatchInitDestroyEvent(AbstractFacesInitializer.java:195)
>   at 
> org.apache.myfaces.webapp.AbstractFacesInitializer.destroyFaces(AbstractFacesInitializer.java:204)
>   at 
> org.apache.myfaces.webapp.StartupServletContextListener.contextDestroyed(StartupServletContextListener.java:215)
>   at 
> org.mortbay.jetty.handler.ContextHandler.doStop(ContextHandler.java:599)
>   at org.mortbay.jetty.webapp.WebAppContext.doStop(WebAppContext.java:498)
>   at 
> org.mortbay.jetty.plugin.Jetty6PluginWebA

[jira] Created: (EXTSCRIPT-116) NPE during reload in Maven Jetty Plugin

2010-04-18 Thread Jan-Kees van Andel (JIRA)
NPE during reload in Maven Jetty Plugin
---

 Key: EXTSCRIPT-116
 URL: https://issues.apache.org/jira/browse/EXTSCRIPT-116
 Project: MyFaces Extensions Scripting
  Issue Type: Bug
  Components: Core
Affects Versions: 1.0-Beta-2
Reporter: Jan-Kees van Andel
Assignee: Werner Punz


I'm still trying to find out the best way to use the Maven Jetty Plugin, so I 
might be doing something wrong on this side here.

Nevertheless, when I run mvn package on my project while the server is running 
(to update dependent libraries to the server), I get the following error:


[INFO] Restarting webapp
18-apr-2010 21:24:02 org.apache.myfaces.webapp.StartupServletContextListener 
dispatchInitializationEvent
INFO: Processing 
plugin:org.apache.myfaces.extensions.scripting.servlet.StartupServletContextPluginChainLoader
18-apr-2010 21:24:02 org.apache.myfaces.webapp.StartupServletContextListener 
dispatchInitializationEvent
INFO: Processing MyFaces plugins done
18-apr-2010 21:24:02 
org.apache.myfaces.extensions.scripting.core.util.WeavingContext getWeaver
WARNING: [EXT-SCRIPTING] Scripting Weaver is not set. Disabling script 
reloading subsystem. Make sure you have the scripting servlet filter enabled in 
your web.xml
2010-04-18 21:24:02.920::WARN:  failed 
org.mortbay.jetty.plugin.jetty6pluginwebappcont...@63f5af{/html5parleys,D:\dev\work\idea9\parleys\web-html5\target\parleys-frontend-html5-0.1-SNAPSHOT}
java.lang.NullPointerException
at 
org.apache.myfaces.extensions.scripting.jsf.dynamicdecorators.implemetations.FacesContextProxy.weaveDelegate(FacesContextProxy.java:54)
at 
org.apache.myfaces.extensions.scripting.jsf.dynamicdecorators.implemetations.FacesContextProxy.(FacesContextProxy.java:140)
at 
org.apache.myfaces.extensions.scripting.jsf.dynamicdecorators.factories.ScriptingFacesContextFactory.getFacesContext(ScriptingFacesContextFactory.java:52)
at 
org.apache.myfaces.webapp.AbstractFacesInitializer.dispatchInitDestroyEvent(AbstractFacesInitializer.java:195)
at 
org.apache.myfaces.webapp.AbstractFacesInitializer.destroyFaces(AbstractFacesInitializer.java:204)
at 
org.apache.myfaces.webapp.StartupServletContextListener.contextDestroyed(StartupServletContextListener.java:215)
at 
org.mortbay.jetty.handler.ContextHandler.doStop(ContextHandler.java:599)
at org.mortbay.jetty.webapp.WebAppContext.doStop(WebAppContext.java:498)
at 
org.mortbay.jetty.plugin.Jetty6PluginWebAppContext.doStop(Jetty6PluginWebAppContext.java:132)
at 
org.mortbay.component.AbstractLifeCycle.stop(AbstractLifeCycle.java:78)
at 
org.mortbay.jetty.plugin.Jetty6RunWarExploded.restartWebApp(Jetty6RunWarExploded.java:118)
at 
org.mortbay.jetty.plugin.Jetty6RunWarExploded$1.filesChanged(Jetty6RunWarExploded.java:100)
at org.mortbay.util.Scanner.reportBulkChanges(Scanner.java:486)
at org.mortbay.util.Scanner.reportDifferences(Scanner.java:352)
at org.mortbay.util.Scanner.scan(Scanner.java:280)
at org.mortbay.util.Scanner$1.run(Scanner.java:232)
at java.util.TimerThread.mainLoop(Timer.java:512)
at java.util.TimerThread.run(Timer.java:462)
[ERROR] Error reconfiguring/restarting webapp after change in watched files
java.lang.NullPointerException
at 
org.apache.myfaces.extensions.scripting.jsf.dynamicdecorators.implemetations.FacesContextProxy.weaveDelegate(FacesContextProxy.java:54)
at 
org.apache.myfaces.extensions.scripting.jsf.dynamicdecorators.implemetations.FacesContextProxy.(FacesContextProxy.java:140)
at 
org.apache.myfaces.extensions.scripting.jsf.dynamicdecorators.factories.ScriptingFacesContextFactory.getFacesContext(ScriptingFacesContextFactory.java:52)
at 
org.apache.myfaces.webapp.AbstractFacesInitializer.dispatchInitDestroyEvent(AbstractFacesInitializer.java:195)
at 
org.apache.myfaces.webapp.AbstractFacesInitializer.destroyFaces(AbstractFacesInitializer.java:204)
at 
org.apache.myfaces.webapp.StartupServletContextListener.contextDestroyed(StartupServletContextListener.java:215)
at 
org.mortbay.jetty.handler.ContextHandler.doStop(ContextHandler.java:599)
at org.mortbay.jetty.webapp.WebAppContext.doStop(WebAppContext.java:498)
at 
org.mortbay.jetty.plugin.Jetty6PluginWebAppContext.doStop(Jetty6PluginWebAppContext.java:132)
at 
org.mortbay.component.AbstractLifeCycle.stop(AbstractLifeCycle.java:78)
at 
org.mortbay.jetty.plugin.Jetty6RunWarExploded.restartWebApp(Jetty6RunWarExploded.java:118)
at 
org.mortbay.jetty.plugin.Jetty6RunWarExploded$1.filesChanged(Jetty6RunWarExploded.java:100)
at org.mortbay.util.Scanner.reportBulkChanges(Scanner.java:486)
at org.mortbay.util.Scanner.reportDifferences(Scanner.java:352)
at org.mortbay.util.Scanner.scan(Scanner.java:280)
 

[jira] Created: (EXTSCRIPT-115) Better logging when developer specifies a non existent source directory

2010-04-18 Thread Jan-Kees van Andel (JIRA)
Better logging when developer specifies a non existent source directory
---

 Key: EXTSCRIPT-115
 URL: https://issues.apache.org/jira/browse/EXTSCRIPT-115
 Project: MyFaces Extensions Scripting
  Issue Type: Bug
  Components: Core
Affects Versions: 1.0-Beta-2
Reporter: Jan-Kees van Andel
Assignee: Werner Punz


When I make a typo in a source directory, like:
D:/dev/work/idea9/parleys/web-html5/src/main/jav (notice the missing 'a' at the 
end)

I don't get a message suggesting I made an error, but ExtScript fails silently 
by not reloading the classes in this directory.

There is a javac message in the log:
INFO: [EXT-SCRITPING] starting class dependency scan
18-apr-2010 16:53:24 
org.apache.myfaces.extensions.scripting.loaders.java.jsr199.JSR199Compiler 
compile
INFO: [EXT-SCRIPTING] Doing a full recompile
javacTask: no source files
Usage: javacTask  
use -help for a list of possible options

But it's easy to miss it because MyFaces and other frameworks also emit a lot 
of logging. Something heavier (ERROR level or maybe an initializer exception) 
might be better, so the user won't get confused/angry.

I think such a check is even more appropriate because file paths in Java are 
always error-prone (I always make mistakes with paths)...

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
https://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] Created: (MYFACES-2663) NPE in UIParameter when value resolves to null

2010-04-18 Thread Jan-Kees van Andel (JIRA)
NPE in UIParameter when value resolves to null
--

 Key: MYFACES-2663
 URL: https://issues.apache.org/jira/browse/MYFACES-2663
 Project: MyFaces Core
  Issue Type: Bug
  Components: JSR-314
Affects Versions: 2.0.1-SNAPSHOT
Reporter: Jan-Kees van Andel


When I have a null value in an  tag, I get the following NPE when rendering:

java.lang.NullPointerException
at 
org.apache.myfaces.shared_impl.renderkit.html.HtmlRendererUtils.getOutcomeTargetLinkHref(HtmlRendererUtils.java:1883)
at 
org.apache.myfaces.shared_impl.renderkit.html.HtmlLinkRendererBase.renderOutcomeLinkStart(HtmlLinkRendererBase.java:742)
at 
org.apache.myfaces.shared_impl.renderkit.html.HtmlLinkRendererBase.encodeBegin(HtmlLinkRendererBase.java:123)
at 
javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:430)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:605)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:614)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:614)
at 
org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage.renderView(FaceletViewDeclarationLanguage.java:1117)
at 
org.apache.myfaces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:231)
at 
org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:122)
at 
org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:207)
at 
org.apache.myfaces.extensions.scripting.jsf.dynamicdecorators.implemetations.LifefcycleProxy.render(LifefcycleProxy.java:74)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:191)
at 
org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:502)

I don't know what the spec says or what Mojarra does, but I think we should at 
least do better than a NPE, for example appending an empty string to the 
parameter list...

Any ideas?

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
https://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] Created: (EXTSCRIPT-114) ExtScript fails to start when Groovy is not available

2010-04-18 Thread Jan-Kees van Andel (JIRA)
ExtScript fails to start when Groovy is not available
-

 Key: EXTSCRIPT-114
 URL: https://issues.apache.org/jira/browse/EXTSCRIPT-114
 Project: MyFaces Extensions Scripting
  Issue Type: Bug
  Components: Core
Affects Versions: 1.0-Beta-2
 Environment: Vista x64, Java 6, jetty-6.1.14
Reporter: Jan-Kees van Andel
Assignee: Werner Punz


When I don't add the groovy binaries to my Maven dependencies, and I run my app 
with maven-jetty-plugin, I get the following exception:
2010-04-18 14:46:55.710::WARN:  Error starting handlers
java.lang.NoClassDefFoundError: groovy/lang/GroovyObject
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
at 
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
...

I don't want to use Groovy, but I do need the Groovy binaries for ExtScript to 
start.

Maybe this Exception should be used to automatically disable Groovy support?

Anyway, I personally don't mind to add Groovy, but I think it should be fixed 
before the 1.0 release b/c I think other users do mind.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
https://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] Commented: (MYFACES-2621) BeanValidation does not work with Unified EL 2.2

2010-03-30 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2621?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12851358#action_12851358
 ] 

Jan-Kees van Andel commented on MYFACES-2621:
-

Looks good, you only need to declare the fields volatile, to ensure safe 
publication of the values.

Performance impact of a volatile read is no issue.

> BeanValidation does not work with Unified EL 2.2
> 
>
> Key: MYFACES-2621
> URL: https://issues.apache.org/jira/browse/MYFACES-2621
> Project: MyFaces Core
>  Issue Type: Bug
>  Components: JSR-314
>Affects Versions: 2.0.0-beta-3
> Environment: bean validation 1.0.0.GA, unified el 2.2
>Reporter: Jakob Korherr
>Assignee: Jakob Korherr
> Fix For: 2.0.0-beta-4
>
>
> When using the new Unified EL 2.2, BeanValidation does not work, because 
> _BeanValidatorUELUtils.getUELValueReferenceWrapper() always returns null.
> See also the related thread on the mailing list: 
> http://www.mail-archive.com/us...@myfaces.apache.org/msg55250.html

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACESTEST-6) Module for automated webapp tests for MyFaces core + extensions

2010-03-27 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACESTEST-6?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12850534#action_12850534
 ] 

Jan-Kees van Andel commented on MYFACESTEST-6:
--

For archiving purposes, here's a link to the original discussion:
http://markmail.org/thread/mx5pvpug3woazhzc

> Module for automated webapp tests for MyFaces core + extensions
> ---
>
> Key: MYFACESTEST-6
> URL: https://issues.apache.org/jira/browse/MYFACESTEST-6
> Project: MyFaces Test
>  Issue Type: New Feature
>Reporter: Jakob Korherr
>Assignee: Jakob Korherr
>
> As we currently only have normal JUnit tests for automated testing in MyFaces 
> Core, it would be really great to have a way to test MyFaces Core 
> automatically in a real webapp at build time with maven. Of course, we 
> currently have the test-webapp, but we still have to check each page manually 
> here, if we want to test everything, which is long-winded. In addition, it 
> would be cool if we could use this also for testing of MyFaces extensions 
> against MyFaces Core and Mojarra.
> To accomplish something like that we could use test frameworks like e.g. 
> Canoo WebTest or HttpUnit + Jetty or something similar. Basically anything 
> that works with jetty in maven, but can also be used with other servers like 
> tomcat or glassfish, would be ok here. I also want to mention JSFUnit here, 
> although we won't be able to use it since it is LGPL licensed.
> The two most important things about this module would be 1) that everything 
> has to work totally automated within maven and without a browser (so I 
> wouldn't consider selenium as an option) and 2) a fluent and easy API to 
> write those tests (otherwise no one would use it). 
> This would help us enormously in ensuring and improving the quality of 
> MyFaces Core and its extensions by getting a far bigger test coverage and 
> more possibilities to test.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2621) BeanValidation does not work with Unified EL 2.2

2010-03-23 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2621?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12848895#action_12848895
 ] 

Jan-Kees van Andel commented on MYFACES-2621:
-

My first implementation of ExternalSpecifications was purely designed for 
performance, relying on the ClassLoader to safely publish the variables. 
Testability was the reason to refactor it into synchronized methods.
If you guys don't mind about less testability, we can always revert it to the 
original implementation which is probably the fastest possible implementation 
(no volatile/synchronized needed).

A Double Checked Locking (DCL) implementation would also be a valid choice, 
since we depend on Java 5+ and the Java 5 JMM guarantees DCL correctness. That 
way, the first access requires an exclusive lock and consecutive calls only do 
volatile reads. This is still pretty fast without compromising testability.

I would say, revert ExternalSpecifications to its original form and then look 
at Leonardo's suggestion.

> BeanValidation does not work with Unified EL 2.2
> 
>
> Key: MYFACES-2621
> URL: https://issues.apache.org/jira/browse/MYFACES-2621
> Project: MyFaces Core
>  Issue Type: Bug
>  Components: JSR-314
>Affects Versions: 2.0.0-beta-3
> Environment: bean validation 1.0.0.GA, unified el 2.2
>Reporter: Jakob Korherr
>Assignee: Jakob Korherr
>
> When using the new Unified EL 2.2, BeanValidation does not work, because 
> _BeanValidatorUELUtils.getUELValueReferenceWrapper() always returns null.
> See also the related thread on the mailing list: 
> http://www.mail-archive.com/us...@myfaces.apache.org/msg55250.html

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (TOMAHAWK-1497) New component: ValidateBeanBehavior

2010-03-21 Thread Jan-Kees van Andel (JIRA)
New component: ValidateBeanBehavior
---

 Key: TOMAHAWK-1497
 URL: https://issues.apache.org/jira/browse/TOMAHAWK-1497
 Project: MyFaces Tomahawk
  Issue Type: New Feature
 Environment: *
Reporter: Jan-Kees van Andel
Assignee: Jan-Kees van Andel


I've been playing with Bean Validation and JSF2 ClientBehavior. I've written a 
simple ClientBehavior which renders JavaScript validations, based on the Bean 
Validation constraints.

The developer only needs to nest a  into a UICommand 
component and the Behavior renders the necessary JavaScript.

As I said, it's a start. It currently only supports some validations:
- JSF required attribute.
- Numeric and date formats, based on how the converter is configured (i.e. a 
pattern like: "dd-MM-").
- Bean Validation @NotNull, @Min, @Max and @Future.

It should be usable in Mojarra, since I simply copied the MyFaces dependencies 
to the component (ExternalSpecifications.java, FacesMessageInterpolator.java 
and the other Bean Validation related classes).

It still needs some work (like supporting other annotations, and more datestyle 
patterns), but it's a start.

So I was thinking about committing it into the Sandbox, under: 
http://svn.apache.org/repos/asf/myfaces/tomahawk/trunk/core20/

I think this concept (when the implementation is ready) is really powerful and 
a nice addition to the project.

I've written two blog articles where I give a little overview:
http://blog.smart-java.nl/blog/index.php/2010/03/17/jsf-2-0-clientbehavior-bean-validation-in-javascript/
http://blog.smart-java.nl/blog/index.php/2010/03/19/jsf-2-0-clientbehavior-first-impressions/

When done Mavenizing, I'll add an attachment with all source code.

What do you guys think? Should we add it to the project?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2509) @ListenerFor not processed for global system events

2010-03-11 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2509?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12844406#action_12844406
 ] 

Jan-Kees van Andel commented on MYFACES-2509:
-

I think you're right.

I initially only considered it to be used for startup listeners, and I don't 
think those classes should contain state, but on the other hand, we shouldn't 
have such a silend, undocumented requirement. This will indeed cause weird bugs.


> @ListenerFor not processed for global system events
> ---
>
> Key: MYFACES-2509
> URL: https://issues.apache.org/jira/browse/MYFACES-2509
> Project: MyFaces Core
>  Issue Type: New Feature
>  Components: JSR-314
>Affects Versions: 2.0.0-alpha
>Reporter: Jan-Kees van Andel
>Assignee: Jan-Kees van Andel
> Attachments: ListenerFor_support.patch
>
>
> We currently don't process @ListenerFor and @ListenerFor annotations on 
> non-component types.
> This is specified in the spec for global system events, see:
> http://java.sun.com/javaee/javaserverfaces/2.0/docs/api/index.html?javax/faces/event/ListenerFor.html
> It would be nice to have it in the beta.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Issue Comment Edited: (MYFACES-2509) @ListenerFor not processed for global system events

2010-03-11 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2509?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12844406#action_12844406
 ] 

Jan-Kees van Andel edited comment on MYFACES-2509 at 3/12/10 7:57 AM:
--

I think you're right.

I initially only considered it to be used for startup listeners, and I don't 
think those classes should contain state, but on the other hand, we shouldn't 
have such a silent, undocumented requirement. This will indeed cause weird bugs.


  was (Author: jankeesvanandel):
I think you're right.

I initially only considered it to be used for startup listeners, and I don't 
think those classes should contain state, but on the other hand, we shouldn't 
have such a silend, undocumented requirement. This will indeed cause weird bugs.

  
> @ListenerFor not processed for global system events
> ---
>
> Key: MYFACES-2509
> URL: https://issues.apache.org/jira/browse/MYFACES-2509
> Project: MyFaces Core
>  Issue Type: New Feature
>  Components: JSR-314
>Affects Versions: 2.0.0-alpha
>Reporter: Jan-Kees van Andel
>Assignee: Jan-Kees van Andel
> Attachments: ListenerFor_support.patch
>
>
> We currently don't process @ListenerFor and @ListenerFor annotations on 
> non-component types.
> This is specified in the spec for global system events, see:
> http://java.sun.com/javaee/javaserverfaces/2.0/docs/api/index.html?javax/faces/event/ListenerFor.html
> It would be nice to have it in the beta.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2585) ajax doesn't work if target contains script with CDATA

2010-03-07 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2585?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12842440#action_12842440
 ] 

Jan-Kees van Andel commented on MYFACES-2585:
-

I'm just looking at it from the side, but isn't the issue that there is some 
fixed CDATA block (the outermost one), which may contain arbitrary HTML 
(possibly containing CDATA blocks)?

There's nothing wrong with the CDATA on itself. It goes wrong when it's being 
marshalled another CDATA block. So that's where I would put (the first part of) 
the fix.
For example, by overriding (if allowed by the TCK) the write() method in 
PartialResponseWriter to encode the CDATA end tag in some way.
When encoded, the JavaScript only needs to decode all content in the CDATA 
blocks.
If conform spec, it should be compatible with Mojarra and frameworks should not 
see any difference.

Any nesting deeper than one level is an error of the developer/component-author 
and I don't think we should anticipate on this.

So actually I'm saying we need to do any encoding exactly at the point where 
the content is being written to the response. Before is impossible, after is 
cumbersome.

The write() method could also be put into the impl, but I think it then needs 
to become smarter, containing some state whether or not the content needs to be 
encoded. Overriding write() in PartialResponseWriter is possibly the easiest 
approach since you can assume all content needs to be encoded.

But again, I'm just looking at it from the sideline and I might not see all 
details here. Just trying to look at it from a fresh angle. ;-)

> ajax doesn't work if target contains script with CDATA
> --
>
> Key: MYFACES-2585
> URL: https://issues.apache.org/jira/browse/MYFACES-2585
> Project: MyFaces Core
>  Issue Type: Bug
>  Components: JSR-314
>Affects Versions: 2.0.0-beta-2
> Environment: Javascript, API, IMPL...
>Reporter: Ganesh Jung
>Priority: Critical
>
> This doesn't work:
>   
>   
>   
>   
>   
>   //   alert("running");
>   //]]>
>   
>   
>   
> But this works fine:
>   
>   
>   
>   
>   
>   alert("running");
>   
>   
>   

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2565) BeanValidator throws Exception if external ExpressionLanguageFactory is being used

2010-02-27 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2565?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12839297#action_12839297
 ] 

Jan-Kees van Andel commented on MYFACES-2565:
-

Separate issue created, see: MYFACES-2582

> BeanValidator throws Exception if external ExpressionLanguageFactory is being 
> used
> --
>
> Key: MYFACES-2565
> URL: https://issues.apache.org/jira/browse/MYFACES-2565
> Project: MyFaces Core
>  Issue Type: Bug
>Affects Versions: 2.0.0-beta
>Reporter: Mark Struberg
>Assignee: Jan-Kees van Andel
> Fix For: 2.0.0-beta-3
>
>
> Currently the BeanValidator has the following code:
> if (_ExternalSpecifications.isUnifiedELAvailable())
> {
>//TODO: Implement when Unified EL for Java EE6 is available.
>throw new FacesException("Unified EL for Java EE6 support is not yet 
> implemented");
> }
> I'm using EL-2.2 in MyFaces-2.0.0-SNAPSHOT and now switched from using 
> facelets-1.1.15.B1 to the built-in facelets-2.
> After that I get this rather unfunny Exception in the code above.
> I tried to remove this condition in BeanValidator and so far all works well. 
> Afaik the new EL-2.1 interface should be backward compatible to the EL of 
> JSF-2.1, isn't?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (MYFACES-2582) Publish useful container capability flags into ServletContext

2010-02-27 Thread Jan-Kees van Andel (JIRA)
Publish useful container capability flags into ServletContext
-

 Key: MYFACES-2582
 URL: https://issues.apache.org/jira/browse/MYFACES-2582
 Project: MyFaces Core
  Issue Type: Improvement
  Components: JSR-314
Affects Versions: 2.0.0-beta-2
Reporter: Jan-Kees van Andel
Assignee: Jan-Kees van Andel
Priority: Minor


Currently, we have 3 identical "ExternalSpecifications" classes, in 3 separate 
packages.

They are getting more complex and the duplication becomes cumbersome.

A solution might be to enhance the StartupServletContextListener class to let 
it publish those container flags into the ServletContext, so the other classes 
can easily reuse them.

See Jakob's comment on MYFACES-2565

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2565) BeanValidator throws Exception if external ExpressionLanguageFactory is being used

2010-02-27 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2565?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12839290#action_12839290
 ] 

Jan-Kees van Andel commented on MYFACES-2565:
-

Okay, but it's getting a bit nasty this way (copy-pasting this class 3 times, 
especially since it is getting more complex).

I assume we also need to work with Java access permissions turned on? 
Otherwise, we can do some reflection stuff, like:

- Putting all logic inside one class, let's say: 
javax.faces.validate._ExternalSpecifications
- Putting some kind of bridge classes in other packages, like:

package javax.faces.component;
class _ExternalSpecificationsBridge {

  public boolean isUnifiedELAvailable() {
try {
  Class c = Class.forName("javax.faces.validate._ExternalSpecifications");
  Method m = c.getMethod("isUnifiedELAvailable");
  m.setAccessible(true);
  return Boolean.TRUE.equals(m.invoke());
} catch () { return false; }
  }

}

> BeanValidator throws Exception if external ExpressionLanguageFactory is being 
> used
> --
>
> Key: MYFACES-2565
> URL: https://issues.apache.org/jira/browse/MYFACES-2565
> Project: MyFaces Core
>  Issue Type: Bug
>Affects Versions: 2.0.0-beta
>Reporter: Mark Struberg
>Assignee: Jan-Kees van Andel
> Fix For: 2.0.0-beta-3
>
>
> Currently the BeanValidator has the following code:
> if (_ExternalSpecifications.isUnifiedELAvailable())
> {
>//TODO: Implement when Unified EL for Java EE6 is available.
>throw new FacesException("Unified EL for Java EE6 support is not yet 
> implemented");
> }
> I'm using EL-2.2 in MyFaces-2.0.0-SNAPSHOT and now switched from using 
> facelets-1.1.15.B1 to the built-in facelets-2.
> After that I get this rather unfunny Exception in the code above.
> I tried to remove this condition in BeanValidator and so far all works well. 
> Afaik the new EL-2.1 interface should be backward compatible to the EL of 
> JSF-2.1, isn't?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Resolved: (MYFACES-2509) @ListenerFor not processed for global system events

2010-02-27 Thread Jan-Kees van Andel (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYFACES-2509?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jan-Kees van Andel resolved MYFACES-2509.
-

   Resolution: Fixed
Fix Version/s: 2.0.0-beta-3

Patch committed

> @ListenerFor not processed for global system events
> ---
>
> Key: MYFACES-2509
> URL: https://issues.apache.org/jira/browse/MYFACES-2509
> Project: MyFaces Core
>  Issue Type: New Feature
>  Components: JSR-314
>Affects Versions: 2.0.0-alpha
>Reporter: Jan-Kees van Andel
>Assignee: Jan-Kees van Andel
> Fix For: 2.0.0-beta-3
>
> Attachments: ListenerFor_support.patch
>
>
> We currently don't process @ListenerFor and @ListenerFor annotations on 
> non-component types.
> This is specified in the spec for global system events, see:
> http://java.sun.com/javaee/javaserverfaces/2.0/docs/api/index.html?javax/faces/event/ListenerFor.html
> It would be nice to have it in the beta.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Resolved: (MYFACES-2565) BeanValidator throws Exception if external ExpressionLanguageFactory is being used

2010-02-27 Thread Jan-Kees van Andel (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYFACES-2565?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jan-Kees van Andel resolved MYFACES-2565.
-

   Resolution: Fixed
Fix Version/s: 2.0.0-beta-3

It should work now, however I don't like the implementation. I need to resort 
to reflection if I want to use the ValueExpression.getValueReference() method, 
because the compile classpath contains two entries for ValueExpression: One in 
jsp-api-2.1 and one in el-api-2.2.

Someone please review the implementation...

> BeanValidator throws Exception if external ExpressionLanguageFactory is being 
> used
> --
>
> Key: MYFACES-2565
> URL: https://issues.apache.org/jira/browse/MYFACES-2565
> Project: MyFaces Core
>  Issue Type: Bug
>Affects Versions: 2.0.0-beta
>Reporter: Mark Struberg
>Assignee: Jan-Kees van Andel
> Fix For: 2.0.0-beta-3
>
>
> Currently the BeanValidator has the following code:
> if (_ExternalSpecifications.isUnifiedELAvailable())
> {
>//TODO: Implement when Unified EL for Java EE6 is available.
>throw new FacesException("Unified EL for Java EE6 support is not yet 
> implemented");
> }
> I'm using EL-2.2 in MyFaces-2.0.0-SNAPSHOT and now switched from using 
> facelets-1.1.15.B1 to the built-in facelets-2.
> After that I get this rather unfunny Exception in the code above.
> I tried to remove this condition in BeanValidator and so far all works well. 
> Afaik the new EL-2.1 interface should be backward compatible to the EL of 
> JSF-2.1, isn't?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2565) BeanValidator throws Exception if external ExpressionLanguageFactory is being used

2010-02-26 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2565?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12838802#action_12838802
 ] 

Jan-Kees van Andel commented on MYFACES-2565:
-

Just looking at the JavaDocs of BeanValidator#validate(), it looks like a 
null-check is missing.

"If ValueReference.getBase() return null, take no action and return."

I'll try to fix this issue (as well as the other BeanValidator related issues) 
this weekend, but it depends, since I'm a bit behind schedule after JSFDays...

> BeanValidator throws Exception if external ExpressionLanguageFactory is being 
> used
> --
>
> Key: MYFACES-2565
> URL: https://issues.apache.org/jira/browse/MYFACES-2565
> Project: MyFaces Core
>  Issue Type: Bug
>Affects Versions: 2.0.0-beta
>Reporter: Mark Struberg
>
> Currently the BeanValidator has the following code:
> if (_ExternalSpecifications.isUnifiedELAvailable())
> {
>//TODO: Implement when Unified EL for Java EE6 is available.
>throw new FacesException("Unified EL for Java EE6 support is not yet 
> implemented");
> }
> I'm using EL-2.2 in MyFaces-2.0.0-SNAPSHOT and now switched from using 
> facelets-1.1.15.B1 to the built-in facelets-2.
> After that I get this rather unfunny Exception in the code above.
> I tried to remove this condition in BeanValidator and so far all works well. 
> Afaik the new EL-2.1 interface should be backward compatible to the EL of 
> JSF-2.1, isn't?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2576) Race condition in _ExternalSpecifications methods

2010-02-24 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2576?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12837915#action_12837915
 ] 

Jan-Kees van Andel commented on MYFACES-2576:
-

It has to do with safe publication of the variable on multicore systems. 
Synchronizing is more than just locking, it's also about visibility of 
variables over multiple processor caches.

Synchronizing also doesn't hurt performance in practice. I'm sure of that, 
because the expensive part is only executed once while holding the lock. If 
there happens to be a performance issue, we can always switch to some kind of 
other implementation, like Double Checked Locking, which is safe since Java 5.

The only issue I currently see is the risk of deadlock, because we're 
effectively invoking alien code within the initialization code (we can't know 
the).

> Race condition in _ExternalSpecifications methods
> -
>
> Key: MYFACES-2576
> URL: https://issues.apache.org/jira/browse/MYFACES-2576
> Project: MyFaces Core
>  Issue Type: Bug
>  Components: JSR-314
>Affects Versions: 2.0.0-beta-2
> Environment: *
>Reporter: Jan-Kees van Andel
>
> The static final fields in the _ExternalSpecifications have recently been 
> refactored into methods. But unfortunately, this has broken thread safety, 
> possibly leading to strange errors (like NPE).
> I think the only solution with the current implementation is to make the 
> methods synchronized. Volatile is not enough AFAICS...

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (MYFACES-2576) Race condition in _ExternalSpecifications methods

2010-02-24 Thread Jan-Kees van Andel (JIRA)
Race condition in _ExternalSpecifications methods
-

 Key: MYFACES-2576
 URL: https://issues.apache.org/jira/browse/MYFACES-2576
 Project: MyFaces Core
  Issue Type: Bug
  Components: JSR-314
Affects Versions: 2.0.0-beta-2
 Environment: *
Reporter: Jan-Kees van Andel


The static final fields in the _ExternalSpecifications have recently been 
refactored into methods. But unfortunately, this has broken thread safety, 
possibly leading to strange errors (like NPE).

I think the only solution with the current implementation is to make the 
methods synchronized. Volatile is not enough AFAICS...

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2565) BeanValidator throws Exception if external ExpressionLanguageFactory is being used

2010-02-19 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2565?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12835895#action_12835895
 ] 

Jan-Kees van Andel commented on MYFACES-2565:
-

I put it there when implementing the first version of BeanValidator. The spec 
says the following:
http://java.sun.com/javaee/javaserverfaces/2.0/docs/api/javax/faces/validator/BeanValidator.html#validate%28javax.faces.context.FacesContext,%20javax.faces.component.UIComponent,%20java.lang.Object%29

Let valueExpression be the return from calling 
UIComponent.getValueExpression(java.lang.String) on the argument component, 
passing the literal string "value" (without the quotes) as an argument. If this 
application is running in an environment with a Unified EL Implementation for 
Java EE6 or later, obtain the ValueReference from valueExpression and let 
valueBaseClase be the return from calling ValueReference.getBase() and 
valueProperty be the return from calling ValueReference.getProperty(). If an 
earlier version of the Unified EL is present, use the appropriate methods to 
inspect valueExpression and derive values for valueBaseClass and valueProperty.

Back then, it was not possible to completely implement this method, because 
Unified EL was not available, so I put the TODO and Exception in. I assume we 
can now safely implement the remaining part.

> BeanValidator throws Exception if external ExpressionLanguageFactory is being 
> used
> --
>
> Key: MYFACES-2565
> URL: https://issues.apache.org/jira/browse/MYFACES-2565
> Project: MyFaces Core
>  Issue Type: Bug
>Affects Versions: 2.0.0-beta
>Reporter: Mark Struberg
>
> Currently the BeanValidator has the following code:
> if (_ExternalSpecifications.isUnifiedELAvailable())
> {
>//TODO: Implement when Unified EL for Java EE6 is available.
>throw new FacesException("Unified EL for Java EE6 support is not yet 
> implemented");
> }
> I'm using EL-2.2 in MyFaces-2.0.0-SNAPSHOT and now switched from using 
> facelets-1.1.15.B1 to the built-in facelets-2.
> After that I get this rather unfunny Exception in the code above.
> I tried to remove this condition in BeanValidator and so far all works well. 
> Afaik the new EL-2.1 interface should be backward compatible to the EL of 
> JSF-2.1, isn't?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2509) @ListenerFor not processed for global system events

2010-02-04 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2509?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12829819#action_12829819
 ] 

Jan-Kees van Andel commented on MYFACES-2509:
-

I don't mind to commit it, but I currently don't have a proper local build so I 
can't do a proper pre-commit test with the latest updates...

If you would like to commit it Mike, that would be great.

Also, Leonardo had a good point. And this might impact the TCK, so we might put 
it on the (short) TODO list or ask it on the EG list

> @ListenerFor not processed for global system events
> ---
>
> Key: MYFACES-2509
> URL: https://issues.apache.org/jira/browse/MYFACES-2509
> Project: MyFaces Core
>  Issue Type: New Feature
>  Components: JSR-314
>Affects Versions: 2.0.0-alpha
>Reporter: Jan-Kees van Andel
>Assignee: Jan-Kees van Andel
> Attachments: ListenerFor_support.patch
>
>
> We currently don't process @ListenerFor and @ListenerFor annotations on 
> non-component types.
> This is specified in the spec for global system events, see:
> http://java.sun.com/javaee/javaserverfaces/2.0/docs/api/index.html?javax/faces/event/ListenerFor.html
> It would be nice to have it in the beta.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2524) Change ExternalSpecifications to enable using it in automated tests

2010-01-29 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2524?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12806489#action_12806489
 ] 

Jan-Kees van Andel commented on MYFACES-2524:
-

The only reason for this approach was performance, since final fields are 
automatically thread safe. The classloader makes sure it is.

Most of the code should be quite performant, only: 
"Validation.buildDefaultValidatorFactory().getValidator();" is an issue.
You don't want to invoke this beast on every request, since it bootstraps Bean 
Validation. I added it because of an issue raised by (I think) Mike Concini.

I think a lazy initializing singleton is a good replacement. This way, you can 
change some settings before initialization happens.


> Change ExternalSpecifications to enable using it in automated tests
> ---
>
> Key: MYFACES-2524
> URL: https://issues.apache.org/jira/browse/MYFACES-2524
> Project: MyFaces Core
>  Issue Type: Task
>Affects Versions: 2.0.0-beta
>Reporter: Jakob Korherr
>Assignee: Jakob Korherr
>
> Currently ExternalSpecifications is using public static final fields to hold 
> the information if something is available or not (e.g. bean validation). 
> However, this is problematic for automated testing, because the value can not 
> be adapted for the test case (not even with reflection).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2509) @ListenerFor not processed for global system events

2010-01-26 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2509?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12804952#action_12804952
 ] 

Jan-Kees van Andel commented on MYFACES-2509:
-

Hrm, it looks like the JavaDoc can be interpreted in multiple ways.

What I read, is that it should be possible for classes that implement 
SystemEventListener, to listen to SystemEvents.

For example: 
http://java.sun.com/javaee/javaserverfaces/2.0/docs/api/javax/faces/event/PostConstructApplicationEvent.html

The current implementation cannot deal with this event, because it occurs 
before the ApplicationImpl code is invoked (there is no component tree at that 
time). For this reason, we need to check it @startup.

But because its so ambiguous, I suggest to leave it out of the beta release.

> @ListenerFor not processed for global system events
> ---
>
> Key: MYFACES-2509
> URL: https://issues.apache.org/jira/browse/MYFACES-2509
> Project: MyFaces Core
>  Issue Type: New Feature
>  Components: JSR-314
>Affects Versions: 2.0.0-alpha
>Reporter: Jan-Kees van Andel
>Assignee: Jan-Kees van Andel
> Attachments: ListenerFor_support.patch
>
>
> We currently don't process @ListenerFor and @ListenerFor annotations on 
> non-component types.
> This is specified in the spec for global system events, see:
> http://java.sun.com/javaee/javaserverfaces/2.0/docs/api/index.html?javax/faces/event/ListenerFor.html
> It would be nice to have it in the beta.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (MYFACES-2509) @ListenerFor not processed for global system events

2010-01-25 Thread Jan-Kees van Andel (JIRA)
@ListenerFor not processed for global system events
---

 Key: MYFACES-2509
 URL: https://issues.apache.org/jira/browse/MYFACES-2509
 Project: MyFaces Core
  Issue Type: New Feature
  Components: JSR-314
Affects Versions: 2.0.0-alpha
Reporter: Jan-Kees van Andel
Assignee: Jan-Kees van Andel


We currently don't process @ListenerFor and @ListenerFor annotations on 
non-component types.

This is specified in the spec for global system events, see:
http://java.sun.com/javaee/javaserverfaces/2.0/docs/api/index.html?javax/faces/event/ListenerFor.html

It would be nice to have it in the beta.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (MYFACES-2490) Missing no-args constructor in EventHandler.Listener causes Exception during postback

2010-01-17 Thread Jan-Kees van Andel (JIRA)
Missing no-args constructor in EventHandler.Listener causes Exception during 
postback
-

 Key: MYFACES-2490
 URL: https://issues.apache.org/jira/browse/MYFACES-2490
 Project: MyFaces Core
  Issue Type: Bug
  Components: JSR-314
Affects Versions: 2.0.0-alpha
Reporter: Jan-Kees van Andel
Assignee: Jan-Kees van Andel


This is a snippet of the erroneous Facelet:



...



...



The problem occurs during postback, when the following Exception is thrown:

javax.servlet.ServletException: Could not restore StateHolder of type 
org.apache.myfaces.view.facelets.tag.jsf.core.EventHandler$Listener (missing 
no-args constructor?)
at 
javax.faces.webapp.FacesServlet._handleStandardRequest(FacesServlet.java:483)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:209)
at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
at 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at 
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.RuntimeException: Could not restore StateHolder of type 
org.apache.myfaces.view.facelets.tag.jsf.core.EventHandler$Listener (missing 
no-args constructor?)
at 
javax.faces.component.UIComponentBase.restoreAttachedState(UIComponentBase.java:1479)
at 
javax.faces.component.UIComponent$EventListenerWrapper.restoreState(UIComponent.java:1120)
at javax.faces.component._DeltaList.restoreState(_DeltaList.java:300)
at 
javax.faces.component.UIComponentBase.restoreDeltaSystemEventListenerClassMap(UIComponentBase.java:1770)
at 
javax.faces.component.UIComponentBase.restoreState(UIComponentBase.java:1611)
at javax.faces.component.UIOutput.restoreState(UIOutput.java:213)
at 
org.apache.myfaces.view.facelets.DefaultFaceletsStateManagementStrategy.restoreStateFromMap(DefaultFaceletsStateManagementStrategy.java:379)
at 
org.apache.myfaces.view.facelets.DefaultFaceletsStateManagementStrategy.restoreStateFromMap(DefaultFaceletsStateManagementStrategy.java:393)
at 
org.apache.myfaces.view.facelets.DefaultFaceletsStateManagementStrategy.restoreStateFromMap(DefaultFaceletsStateManagementStrategy.java:393)
at 
org.apache.myfaces.view.facelets.DefaultFaceletsStateManagementStrategy.restoreView(DefaultFaceletsStateManagementStrategy.java:181)
at 
org.apache.myfaces.application.jsp.JspStateManagerImpl.restoreView(JspStateManagerImpl.java:388)
at 
org.apache.myfaces.view.ViewDeclarationLanguageBase.restoreView(ViewDeclarationLanguageBase.java:106)
at 
org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage.restoreView(FaceletViewDeclarationLanguage.java:927)
at 
org.apache.myfaces.application.ViewHandlerImpl.restoreView(ViewHandlerImpl.java:231)
at 
javax.faces.application.ViewHandlerWrapper.restoreView(ViewHandlerWrapper.java:80)
at 
org.apache.myfaces.lifecycle.RestoreViewExecutor.execute(RestoreViewExecutor.java:106)
at 
org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:129)
at 
org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:85)
at 
javax.faces.webapp.FacesServlet._handleStandardRequest(FacesServlet.java:448)
... 13 more
Caused by: java.lang.InstantiationException: 
org.apache.myfaces.view.facelets.tag.jsf.core.EventHandler$Listener
at java.lang.Class.newInstance0(Class.java:340)
at java.lang.Class.newInstance(Class.java:308)
at 
javax.faces.component.UIComponentBase.restoreAttachedState(UIComponentBase.java:1475)
... 31 more

According to the FacesListener spec, every implementation must provide a 
no-args constructor:
https://javaserverfaces.dev.java.net/nonav/docs/2.0/

[jira] Created: (EXTSCRIPT-38) NPE after reloading NavigationHandler

2009-12-15 Thread Jan-Kees van Andel (JIRA)
NPE after reloading NavigationHandler
-

 Key: EXTSCRIPT-38
 URL: https://issues.apache.org/jira/browse/EXTSCRIPT-38
 Project: MyFaces Extensions Scripting
  Issue Type: Bug
Reporter: Jan-Kees van Andel
Assignee: Werner Punz


I see the explanation in the createMethodReloadingProxyFromObject JavaDocs, but 
since the example crashes, I thought, let's file this issue anyway.

When a new NavigationHandler is loaded and I click on a button in the example 
page, I get the following NPE (because _delegate is null):

java.lang.NullPointerException
at 
org.apache.myfaces.scripting.core.reloading.SimpleReloadingStrategy.reload(SimpleReloadingStrategy.java:70)
at 
org.apache.myfaces.scripting.core.reloading.GlobalReloadingStrategy.reload(GlobalReloadingStrategy.java:79)
at 
org.apache.myfaces.scripting.api.BaseWeaver.reloadScriptingInstance(BaseWeaver.java:98)
at 
org.apache.myfaces.scripting.core.CoreWeaver.reloadScriptingInstance(CoreWeaver.java:62)
at 
org.apache.myfaces.scripting.jsf.dynamicdecorators.implemetations.NavigationHandlerProxy.weaveDelegate(NavigationHandlerProxy.java:36)
at 
org.apache.myfaces.scripting.jsf.dynamicdecorators.implemetations.NavigationHandlerProxy.handleNavigation(NavigationHandlerProxy.java:45)
at 
org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:82)
at javax.faces.component.UICommand.broadcast(UICommand.java:127)
at 
javax.faces.component.UIViewRoot._broadcastForPhase(UIViewRoot.java:369)
at javax.faces.component.UIViewRoot.process(UIViewRoot.java:264)
at 
javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:153)
at 
org.apache.myfaces.lifecycle.InvokeApplicationExecutor.execute(InvokeApplicationExecutor.java:32)
at 
org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:103)
at 
org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:76)
at 
org.apache.myfaces.scripting.jsf.dynamicdecorators.implemetations.LifefcycleProxy.execute(LifefcycleProxy.java:60)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:178)
at 
org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:491)
at 
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1074)
at 
org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147)
at 
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1065)
at 
org.apache.myfaces.scripting.servlet.ScriptingServletFilter.doFilter(ScriptingServletFilter.java:50)
at 
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1065)
at 
org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:365)
at 
org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:185)
at 
org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
at 
org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:689)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:391)
at 
org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:146)
at 
org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
at 
org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
at org.mortbay.jetty.Server.handle(Server.java:285)
at 
org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:457)
at 
org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:765)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:628)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:209)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:357)
at 
org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:329)
at 
org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:475)


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Resolved: (EXTSCRIPT-27) myfaces 1.2. example doesn't run on Windoze...

2009-12-15 Thread Jan-Kees van Andel (JIRA)

 [ 
https://issues.apache.org/jira/browse/EXTSCRIPT-27?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jan-Kees van Andel resolved EXTSCRIPT-27.
-

Resolution: Fixed
  Assignee: Jan-Kees van Andel  (was: Werner Punz)

All three examples should work now. (except for the NPE listed in EXTSCRIPT-36)

> myfaces 1.2. example doesn't run on Windoze...
> --
>
> Key: EXTSCRIPT-27
> URL: https://issues.apache.org/jira/browse/EXTSCRIPT-27
> Project: MyFaces Extensions Scripting
>  Issue Type: Bug
>Reporter: Matthias Weßendorf
>Assignee: Jan-Kees van Andel
> Attachments: Extscript_examples
>
>
> 2009-12-05 13:46:20.312::WARN:  Error starting handlers
> java.lang.ExceptionInInitializerError
> at 
> org.apache.myfaces.shared_impl.webapp.webxml.WebXml.init(WebXml.java:243)
> at 
> org.apache.myfaces.shared_impl.webapp.webxml.WebXml.getWebXml(WebXml.java:228)
> at 
> org.apache.myfaces.webapp.AbstractFacesInitializer.initFaces(AbstractFacesInitializer.java:74)
> at 
> org.apache.myfaces.webapp.StartupServletContextListener.contextInitialized(StartupServletContextListener.java:139)
> at 
> org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:511)
> at org.mortbay.jetty.servlet.Context.startContext(Context.java:135)
> at 
> org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1191)
> at 
> org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:481)
> at 
> org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:434)
> at 
> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
> at 
> org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:147)
> at 
> org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:120)
> at 
> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
> at 
> org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:147)
> at 
> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
> at 
> org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:117)
> at org.mortbay.jetty.Server.doStart(Server.java:210)
> at 
> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
> at 
> org.mortbay.jetty.plugin.Jetty6PluginServer.start(Jetty6PluginServer.java:134)
> at 
> org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java:332)
> at 
> org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.java:277)
> at 
> org.mortbay.jetty.plugin.AbstractJettyRunMojo.execute(AbstractJettyRunMojo.java:195)
> at 
> org.mortbay.jetty.plugin.Jetty6RunMojo.execute(Jetty6RunMojo.java:183)
> at 
> org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:453)
> at 
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:559)
> at 
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:513)
> at 
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:483)
> at 
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:331)
> at 
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:292)
> at 
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:142)
> at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:336)
> at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:129)
> at org.apache.maven.cli.MavenCli.main(MavenCli.java:301)
> 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.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
> at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
> at 
> org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
> at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
> Caused by: java.lang.StringIndexOutOfBoundsException: String index out of 
> range: 1
> at java.lang.String.charAt(String.java:687)
> at java.util.regex.Matcher.appendReplacement(Matcher.java:703)
> at java.util.regex.Matcher.replaceAll(Mat

[jira] Commented: (EXTSCRIPT-36) NPE in when clicking button in myfaces 1.2 example

2009-12-14 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/EXTSCRIPT-36?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12790105#action_12790105
 ] 

Jan-Kees van Andel commented on EXTSCRIPT-36:
-

I also tried a quick fix (some null checks), but unfortunately this didn't 
solve anything. If I have some spare time tonight, I'll also take a look at the 
cause. For one, I saw two strange (copy-paste) methods in WeavingContext.java:

public static Object createMethodReloadingProxyFromObject(Object o, Class 
theInterface, int artefactType) {
return Proxy.newProxyInstance(o.getClass().getClassLoader(),
  new Class[]{theInterface},
  new MethodLevelReloadingHandler(o, 
artefactType));
}

public static Object createConstructorReloadingProxyFromObject(Object o, 
Class theInterface, int artefactType) {
return Proxy.newProxyInstance(o.getClass().getClassLoader(),
  new Class[]{theInterface},
  new MethodLevelReloadingHandler(o, 
artefactType));
}

Both return a MethodLevelReloadingHandler.

However, changing the second method to return a 
ConstructorLevelReloadingHandler, doesn't make a difference. The same exception 
occurs.

> NPE in when clicking button in myfaces 1.2 example
> --
>
> Key: EXTSCRIPT-36
> URL: https://issues.apache.org/jira/browse/EXTSCRIPT-36
> Project: MyFaces Extensions Scripting
>  Issue Type: Bug
>Reporter: Jan-Kees van Andel
>Assignee: Werner Punz
>
> When I enter some data in the upper input field in the MF 1.2 example, I get 
> the following NPE:
> javax.faces.FacesException: Exception while validating component with path : 
> {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: 
> /helloWorld.xhtml][Class: javax.faces.component.html.HtmlForm,Id: 
> form][Class: javax.faces.component.html.HtmlPanelGrid,Id: grid][Class: 
> javax.faces.component.html.HtmlInputText,Id: input1]}
>   at javax.faces.component.UIInput.validate(UIInput.java:421)
>   at javax.faces.component.UIInput.processValidators(UIInput.java:186)
>   at 
> javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:726)
>   at javax.faces.component.UIForm.processValidators(UIForm.java:82)
>   at 
> javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:726)
>   at javax.faces.component.UIViewRoot.access$101(UIViewRoot.java:62)
>   at javax.faces.component.UIViewRoot$2.process(UIViewRoot.java:133)
>   at javax.faces.component.UIViewRoot.process(UIViewRoot.java:260)
>   at 
> javax.faces.component.UIViewRoot.processValidators(UIViewRoot.java:129)
>   at 
> org.apache.myfaces.lifecycle.ProcessValidationsExecutor.execute(ProcessValidationsExecutor.java:32)
>   at 
> org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:103)
>   at 
> org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:76)
>   at 
> org.apache.myfaces.scripting.jsf.dynamicdecorators.implemetations.LifefcycleProxy.execute(LifefcycleProxy.java:60)
>   at javax.faces.webapp.FacesServlet.service(FacesServlet.java:178)
>   at 
> org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:491)
>   at 
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1074)
>   at 
> org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147)
>   at 
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1065)
>   at 
> org.apache.myfaces.scripting.servlet.ScriptingServletFilter.doFilter(ScriptingServletFilter.java:48)
>   at 
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1065)
>   at 
> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:365)
>   at 
> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:185)
>   at 
> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
>   at 
> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:689)
>   at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:391)
>   at 
> org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:146)
>   at 
> org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
>   at 
> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
>   at org.mortbay.jetty.Server.handle(Server.java:285)
>   at 
> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:457)
>   at 
> org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:765)
> 

[jira] Created: (EXTSCRIPT-36) NPE in when clicking button in myfaces 1.2 example

2009-12-13 Thread Jan-Kees van Andel (JIRA)
NPE in when clicking button in myfaces 1.2 example
--

 Key: EXTSCRIPT-36
 URL: https://issues.apache.org/jira/browse/EXTSCRIPT-36
 Project: MyFaces Extensions Scripting
  Issue Type: Bug
Reporter: Jan-Kees van Andel
Assignee: Werner Punz


When I enter some data in the upper input field in the MF 1.2 example, I get 
the following NPE:

javax.faces.FacesException: Exception while validating component with path : 
{Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: 
/helloWorld.xhtml][Class: javax.faces.component.html.HtmlForm,Id: form][Class: 
javax.faces.component.html.HtmlPanelGrid,Id: grid][Class: 
javax.faces.component.html.HtmlInputText,Id: input1]}
at javax.faces.component.UIInput.validate(UIInput.java:421)
at javax.faces.component.UIInput.processValidators(UIInput.java:186)
at 
javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:726)
at javax.faces.component.UIForm.processValidators(UIForm.java:82)
at 
javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:726)
at javax.faces.component.UIViewRoot.access$101(UIViewRoot.java:62)
at javax.faces.component.UIViewRoot$2.process(UIViewRoot.java:133)
at javax.faces.component.UIViewRoot.process(UIViewRoot.java:260)
at 
javax.faces.component.UIViewRoot.processValidators(UIViewRoot.java:129)
at 
org.apache.myfaces.lifecycle.ProcessValidationsExecutor.execute(ProcessValidationsExecutor.java:32)
at 
org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:103)
at 
org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:76)
at 
org.apache.myfaces.scripting.jsf.dynamicdecorators.implemetations.LifefcycleProxy.execute(LifefcycleProxy.java:60)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:178)
at 
org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:491)
at 
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1074)
at 
org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147)
at 
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1065)
at 
org.apache.myfaces.scripting.servlet.ScriptingServletFilter.doFilter(ScriptingServletFilter.java:48)
at 
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1065)
at 
org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:365)
at 
org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:185)
at 
org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
at 
org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:689)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:391)
at 
org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:146)
at 
org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
at 
org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
at org.mortbay.jetty.Server.handle(Server.java:285)
at 
org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:457)
at 
org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:765)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:628)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:209)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:357)
at 
org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:329)
at 
org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:475)
Caused by: java.lang.NullPointerException
at 
org.apache.myfaces.scripting.core.CoreWeaver.reloadScriptingClass(CoreWeaver.java:70)
at 
org.apache.myfaces.scripting.core.MethodLevelReloadingHandler.reloadInvoke(MethodLevelReloadingHandler.java:87)
at 
org.apache.myfaces.scripting.core.MethodLevelReloadingHandler.invoke(MethodLevelReloadingHandler.java:65)
at $Proxy6.validate(Unknown Source)
at 
javax.faces.component._ComponentUtils.callValidators(_ComponentUtils.java:159)
at javax.faces.component.UIInput.validateValue(UIInput.java:357)
at javax.faces.component.UIInput.validate(UIInput.java:405)
... 35 more

The debugger says that aclass is null.

Since this statement is only for debugging, I assume the quick fix is simple. 
Don't know the impact on the rest of the codebase...

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (EXTSCRIPT-27) myfaces 1.2. example doesn't run on Windoze...

2009-12-13 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/EXTSCRIPT-27?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12789942#action_12789942
 ] 

Jan-Kees van Andel commented on EXTSCRIPT-27:
-

I think I found the problem. On line 139 in GroovyWeaver.groovy, I see the 
following line:
WeavingContext.getRefreshContext().setRecompileRecommended(ScriptingConst.ENGINE_TYPE_JAVA,
 Boolean.FALSE);

If I change it into:
WeavingContext.getRefreshContext().setRecompileRecommended(ScriptingConst.ENGINE_TYPE_GROOVY,
 Boolean.FALSE);

...the MyFaces 1.2 example works.

I can commit it, as well as the other fix for EXTSCRIPT-27, but since I don't 
completely oversee the ext-scripting architecture, I thought I'll ask before 
doing anything. ;-) 

It looks like a bug. The MyFaces 2.0 example already works, because of the 
IntialScanAnnotationListener that's being invoked by MyFaces 2.0.

The Spring example also didn't work, but I've changed the dependencies in the 
pom to be the same as in the MyFaces 1.2 pom. I didn't put much effort into it, 
but this is what I did:
- add core-java6
- add myfaces12-extensions
- remove the SNAPSHOT from the myfaces dependencies

> myfaces 1.2. example doesn't run on Windoze...
> --
>
> Key: EXTSCRIPT-27
> URL: https://issues.apache.org/jira/browse/EXTSCRIPT-27
> Project: MyFaces Extensions Scripting
>  Issue Type: Bug
>Reporter: Matthias Weßendorf
>Assignee: Werner Punz
>
> 2009-12-05 13:46:20.312::WARN:  Error starting handlers
> java.lang.ExceptionInInitializerError
> at 
> org.apache.myfaces.shared_impl.webapp.webxml.WebXml.init(WebXml.java:243)
> at 
> org.apache.myfaces.shared_impl.webapp.webxml.WebXml.getWebXml(WebXml.java:228)
> at 
> org.apache.myfaces.webapp.AbstractFacesInitializer.initFaces(AbstractFacesInitializer.java:74)
> at 
> org.apache.myfaces.webapp.StartupServletContextListener.contextInitialized(StartupServletContextListener.java:139)
> at 
> org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:511)
> at org.mortbay.jetty.servlet.Context.startContext(Context.java:135)
> at 
> org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1191)
> at 
> org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:481)
> at 
> org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:434)
> at 
> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
> at 
> org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:147)
> at 
> org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:120)
> at 
> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
> at 
> org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:147)
> at 
> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
> at 
> org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:117)
> at org.mortbay.jetty.Server.doStart(Server.java:210)
> at 
> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
> at 
> org.mortbay.jetty.plugin.Jetty6PluginServer.start(Jetty6PluginServer.java:134)
> at 
> org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java:332)
> at 
> org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.java:277)
> at 
> org.mortbay.jetty.plugin.AbstractJettyRunMojo.execute(AbstractJettyRunMojo.java:195)
> at 
> org.mortbay.jetty.plugin.Jetty6RunMojo.execute(Jetty6RunMojo.java:183)
> at 
> org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:453)
> at 
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:559)
> at 
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:513)
> at 
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:483)
> at 
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:331)
> at 
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:292)
> at 
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:142)
> at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:336)
> at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:129)
> at org.apache.maven.cli.MavenCli.main(MavenCli.java:301)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at 
> su

[jira] Resolved: (MYFACES-2386) Refactor Bean Validation "constants" to package-private class

2009-10-25 Thread Jan-Kees van Andel (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYFACES-2386?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jan-Kees van Andel resolved MYFACES-2386.
-

   Resolution: Fixed
Fix Version/s: 2.0.0-alpha

Fixed, but not with an implementation I'm very proud of. I think the 
specification needs to standardize this class, so we can make it public and 
avoid code duplication.

> Refactor Bean Validation "constants" to package-private class
> -
>
> Key: MYFACES-2386
> URL: https://issues.apache.org/jira/browse/MYFACES-2386
> Project: MyFaces Core
>  Issue Type: Bug
>  Components: JSR-314
>Affects Versions: 2.0.0-alpha
>Reporter: Jan-Kees van Andel
>Assignee: Jan-Kees van Andel
> Fix For: 2.0.0-alpha
>
>
> Matthias pointed me to a TCK issue in the Bean Validation related classes 
> (BeanValidator, UIInput).
> I've created some public static final booleans, used to determine @startup 
> whether Bean Validation and Unified EL are available.
> The reason to declare them as public was because they are shared between the 
> "javax.faces.component" and "javax.faces.bean" packages, but it will probably 
> cause TCK failures.
> Solution: Refactor the environment related "constants" to a package-private 
> class that exists in all necessary packages. This class might delegate the 
> plumbing to the IMPL to prevent code duplication.
> See the issue on the mailing list:
> http://www.nabble.com/-JSF-2.0--JSR-303-support-in-MyFaces-2.0-td25969477.html

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (MYFACES-2386) Refactor Bean Validation "constants" to package-private class

2009-10-22 Thread Jan-Kees van Andel (JIRA)
Refactor Bean Validation "constants" to package-private class
-

 Key: MYFACES-2386
 URL: https://issues.apache.org/jira/browse/MYFACES-2386
 Project: MyFaces Core
  Issue Type: Bug
  Components: JSR-314
Affects Versions: 2.0.0-alpha
Reporter: Jan-Kees van Andel


Matthias pointed me to a TCK issue in the Bean Validation related classes 
(BeanValidator, UIInput).

I've created some public static final booleans, used to determine @startup 
whether Bean Validation and Unified EL are available.

The reason to declare them as public was because they are shared between the 
"javax.faces.component" and "javax.faces.bean" packages, but it will probably 
cause TCK failures.

Solution: Refactor the environment related "constants" to a package-private 
class that exists in all necessary packages. This class might delegate the 
plumbing to the IMPL to prevent code duplication.

See the issue on the mailing list:
http://www.nabble.com/-JSF-2.0--JSR-303-support-in-MyFaces-2.0-td25969477.html

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2378) Use java util logging on 2.0.x branch

2009-10-09 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2378?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12764146#action_12764146
 ] 

Jan-Kees van Andel commented on MYFACES-2378:
-

I agree with Leonardo. I think this is also the least surprising thing to do 
from a user's perspective, since most loggers use the FQCN as key.

> Use java util logging on 2.0.x branch
> -
>
> Key: MYFACES-2378
> URL: https://issues.apache.org/jira/browse/MYFACES-2378
> Project: MyFaces Core
>  Issue Type: Task
>  Components: JSR-314
>Reporter: Leonardo Uribe
>Assignee: Leonardo Uribe
> Attachments: MYFACES-2378-core.patch, MYFACES-2378-shared-core.patch
>
>


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Resolved: (MYFACES-1951) Update UIInput.validate()

2009-08-18 Thread Jan-Kees van Andel (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYFACES-1951?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jan-Kees van Andel resolved MYFACES-1951.
-

   Resolution: Fixed
Fix Version/s: 2.0.0-alpha

Fixed

> Update UIInput.validate()
> -
>
> Key: MYFACES-1951
> URL: https://issues.apache.org/jira/browse/MYFACES-1951
> Project: MyFaces Core
>  Issue Type: Task
>  Components: JSR-314
>Affects Versions: 2.0.0-alpha
>Reporter: Matthias Weßendorf
>Assignee: Jan-Kees van Andel
> Fix For: 2.0.0-alpha
>
>
> The algorithm for UIInput.validate() was changed, due to this spec issue:
> https://javaserverfaces-spec-public.dev.java.net/issues/show_bug.cgi?id=323
> See JavaDoc on validate() for details on the change:
> https://javaserverfaces-spec-public.dev.java.net/nonav/issues/showattachment.cgi/133/UIInput.html

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Resolved: (MYFACES-2272) Apply changes related to UIInput.validateValue and UIInput.VALIDATE_EMPTY_FIELDS_PARAM_NAME

2009-08-18 Thread Jan-Kees van Andel (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYFACES-2272?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jan-Kees van Andel resolved MYFACES-2272.
-

   Resolution: Fixed
Fix Version/s: 2.0.0-alpha

I think I've implemented it completely. I've added the code to check for the 
init-param and the code to check for the existence of Bean Validation. That 
should be it...

> Apply changes related to UIInput.validateValue and 
> UIInput.VALIDATE_EMPTY_FIELDS_PARAM_NAME
> ---
>
> Key: MYFACES-2272
> URL: https://issues.apache.org/jira/browse/MYFACES-2272
> Project: MyFaces Core
>  Issue Type: Task
>  Components: JSR-314
>Reporter: Leonardo Uribe
>Assignee: Jan-Kees van Andel
> Fix For: 2.0.0-alpha
>
>


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2302) Get simple 2.0 app working

2009-08-03 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2302?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12738324#action_12738324
 ] 

Jan-Kees van Andel commented on MYFACES-2302:
-

Can you also test the annotations (like: @ManagedBean)?

I've committed some bugfixes last weekend to get the annotations working, but 
it's possible that I wasn't complete (I encountered these bugs while I was 
working on something else).

> Get simple 2.0 app working
> --
>
> Key: MYFACES-2302
> URL: https://issues.apache.org/jira/browse/MYFACES-2302
> Project: MyFaces Core
>  Issue Type: Task
>  Components: JSR-314
>Affects Versions: 2.0.0-alpha
>Reporter: Curtiss Howard
>
> As a first attempt in getting the Facelets code work, I will try to get the 
> "Guess number 2.0" app working.  This app tests resources and custom Facelets 
> taglibs, so this should be a good way to tie together and fix all the code 
> that's gone in so far.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (MYFACES-2301) Support for default Validators in Builder Plugin

2009-08-03 Thread Jan-Kees van Andel (JIRA)
Support for default Validators in Builder Plugin


 Key: MYFACES-2301
 URL: https://issues.apache.org/jira/browse/MYFACES-2301
 Project: MyFaces Core
  Issue Type: New Feature
  Components: build process
Reporter: Jan-Kees van Andel


The javax.faces.Bean Validator is a "default" Validator.

The concept of default Validators, however, is not supported in the MyFaces 
Builder Plugin.

I think it will be useful to add support for default Validators to the builder 
plugin.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Resolved: (MYFACES-2280) ValidatorException should support collections of messages.

2009-08-02 Thread Jan-Kees van Andel (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYFACES-2280?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jan-Kees van Andel resolved MYFACES-2280.
-

   Resolution: Fixed
Fix Version/s: 2.0.0-alpha

Mike Concini already did the heavy plumbing in MYFACES-2294, so we can close 
this issue.

> ValidatorException should support collections of messages.
> --
>
> Key: MYFACES-2280
> URL: https://issues.apache.org/jira/browse/MYFACES-2280
> Project: MyFaces Core
>  Issue Type: Task
>  Components: JSR-314
>Reporter: Leonardo Uribe
>Assignee: Jan-Kees van Andel
> Fix For: 2.0.0-alpha
>
>


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Resolved: (MYFACES-2296) Annotation scanning bugs

2009-08-01 Thread Jan-Kees van Andel (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYFACES-2296?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jan-Kees van Andel resolved MYFACES-2296.
-

   Resolution: Fixed
Fix Version/s: 2.0.0-alpha

This fix works with my test webapp. I've checked the ClassFile Specification. 
It should now work for others too.

> Annotation scanning bugs
> 
>
> Key: MYFACES-2296
> URL: https://issues.apache.org/jira/browse/MYFACES-2296
> Project: MyFaces Core
>  Issue Type: Bug
>  Components: JSR-314
>Reporter: Jan-Kees van Andel
>Assignee: Jan-Kees van Andel
> Fix For: 2.0.0-alpha
>
>
> Some bugs in the annotation code causes my test program to fail.
> - Some bytecode scanning bugs
> - Annotations not retention = RUNTIME
> - Annotations to scan are org/myfaces, not javax/faces
> Already created a fix for the listed issues.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (MYFACES-2296) Annotation scanning bugs

2009-08-01 Thread Jan-Kees van Andel (JIRA)
Annotation scanning bugs


 Key: MYFACES-2296
 URL: https://issues.apache.org/jira/browse/MYFACES-2296
 Project: MyFaces Core
  Issue Type: Bug
  Components: JSR-314
Reporter: Jan-Kees van Andel
Assignee: Jan-Kees van Andel


Some bugs in the annotation code causes my test program to fail.
- Some bytecode scanning bugs
- Annotations not retention = RUNTIME
- Annotations to scan are org/myfaces, not javax/faces

Already created a fix for the listed issues.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2280) ValidatorException should support collections of messages.

2009-07-14 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2280?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12731060#action_12731060
 ] 

Jan-Kees van Andel commented on MYFACES-2280:
-

I can pick this up as part of implementing Bean Validation.

> ValidatorException should support collections of messages.
> --
>
> Key: MYFACES-2280
> URL: https://issues.apache.org/jira/browse/MYFACES-2280
> Project: MyFaces Core
>  Issue Type: Task
>  Components: JSR-314
>Reporter: Leonardo Uribe
>Assignee: Jan-Kees van Andel
>


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (MYFACES-2288) Implement Bean Validation

2009-07-14 Thread Jan-Kees van Andel (JIRA)
Implement Bean Validation
-

 Key: MYFACES-2288
 URL: https://issues.apache.org/jira/browse/MYFACES-2288
 Project: MyFaces Core
  Issue Type: New Feature
  Components: JSR-314
Reporter: Jan-Kees van Andel
Assignee: Jan-Kees van Andel


Implement BeanValidator class, corresponding tags/configs and logic related to 
Bean Validation.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2272) Apply changes related to UIInput.validateValue and UIInput.VALIDATE_EMPTY_FIELDS_PARAM_NAME

2009-07-14 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2272?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12730984#action_12730984
 ] 

Jan-Kees van Andel commented on MYFACES-2272:
-

Already working on it as part of MYFACES-1951.

> Apply changes related to UIInput.validateValue and 
> UIInput.VALIDATE_EMPTY_FIELDS_PARAM_NAME
> ---
>
> Key: MYFACES-2272
> URL: https://issues.apache.org/jira/browse/MYFACES-2272
> Project: MyFaces Core
>  Issue Type: Task
>  Components: JSR-314
>Reporter: Leonardo Uribe
>Assignee: Jan-Kees van Andel
>


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Updated: (MYFACES-2098) Add RegexValidator class

2009-07-06 Thread Jan-Kees van Andel (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYFACES-2098?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jan-Kees van Andel updated MYFACES-2098:


   Resolution: Fixed
Fix Version/s: 2.0.0-alpha
   Status: Resolved  (was: Patch Available)

This one should be completely implemented

> Add RegexValidator class
> 
>
> Key: MYFACES-2098
> URL: https://issues.apache.org/jira/browse/MYFACES-2098
> Project: MyFaces Core
>  Issue Type: Task
>  Components: JSR-314
>Affects Versions: 2.0.0-alpha
>Reporter: Jan-Kees van Andel
>Assignee: Jan-Kees van Andel
>Priority: Minor
> Fix For: 2.0.0-alpha
>
> Attachments: RegexValidator.patch, RegexValidator_2.patch
>
>
> The JSF 2.0 spec specifies one new Validator: the RegexValidator which 
> validates a string value against a java.util.regex Regular Expression.
> A.t.m. it doesn't exist yet.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2140) Add annotation processing logic

2009-03-21 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2140?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12688010#action_12688010
 ] 

Jan-Kees van Andel commented on MYFACES-2140:
-

+1

It sounds like a good plan Leonardo.

This change was a first attempt to split up the FacesConfigurator class into 
some smaller and more manageable bits, but you're right that the structure 
doesn't support everything it should support.
I also noticed the problem, but I was (and I am now) unable to fix it because 
I'm lacking the free time. It's extremely busy at work (working long hours to 
reach an impossible deadline).

So yeah, I'm very happy if you can help out on this one. Thanks.

> Add annotation processing logic
> ---
>
> Key: MYFACES-2140
> URL: https://issues.apache.org/jira/browse/MYFACES-2140
> Project: MyFaces Core
>  Issue Type: New Feature
>  Components: JSR-314
>Reporter: Jan-Kees van Andel
> Attachments: ManagedBean.patch, ManagedBeanAnnotationProcessor.patch
>
>
> JSF 2.0 specifies the use of the following annotations for Managed Bean 
> configuration:
> - ManagedBean
> - ManagedBeans
> - ManagedProperty
> - RequestScoped
> - SessionScoped
> - ViewScoped
> - ApplicationScoped
> - NoneScoped
> The annotations are already there, it now needs processing logic.
> I'm on it.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (MYFACES-2162) Default RenderKitId should be HTML_BASIC when using annotations

2009-03-07 Thread Jan-Kees van Andel (JIRA)
Default RenderKitId should be HTML_BASIC when using annotations
---

 Key: MYFACES-2162
 URL: https://issues.apache.org/jira/browse/MYFACES-2162
 Project: MyFaces Core
  Issue Type: New Feature
  Components: JSR-314
Reporter: Jan-Kees van Andel
Priority: Minor


A.t.m. the default RenderKit is "", but it should be "HTML_BASIC".

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Updated: (MYFACES-2140) Add annotation processing logic

2009-02-08 Thread Jan-Kees van Andel (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYFACES-2140?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jan-Kees van Andel updated MYFACES-2140:


Status: Patch Available  (was: Open)

> Add annotation processing logic
> ---
>
> Key: MYFACES-2140
> URL: https://issues.apache.org/jira/browse/MYFACES-2140
> Project: MyFaces Core
>  Issue Type: New Feature
>  Components: JSR-314
>Reporter: Jan-Kees van Andel
>
> JSF 2.0 specifies the use of the following annotations for Managed Bean 
> configuration:
> - ManagedBean
> - ManagedBeans
> - ManagedProperty
> - RequestScoped
> - SessionScoped
> - ViewScoped
> - ApplicationScoped
> - NoneScoped
> The annotations are already there, it now needs processing logic.
> I'm on it.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Updated: (MYFACES-2147) NoSuchMethodException when instantiating SystemEvent objects

2009-02-08 Thread Jan-Kees van Andel (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYFACES-2147?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jan-Kees van Andel updated MYFACES-2147:


Status: Patch Available  (was: Open)

> NoSuchMethodException when instantiating SystemEvent objects
> 
>
> Key: MYFACES-2147
> URL: https://issues.apache.org/jira/browse/MYFACES-2147
> Project: MyFaces Core
>  Issue Type: Bug
>  Components: JSR-314
>Affects Versions: 2.0.0-alpha
>Reporter: Jan-Kees van Andel
>
> This error occurs when rendering an arbitrary page.
> It is caused by the Class.getConstructor(Class) not being aware of subclasses.
> SystemEvent has a constructor with one parameter of type Object, but 
> different subclasses have different constructors.
> Caused by: java.lang.NoSuchMethodException: 
> javax.faces.event.AfterAddToParentEvent.(java.lang.Object)
>   at java.lang.Class.getConstructor0(Class.java:2706)
>   at java.lang.Class.getConstructor(Class.java:1657)
>   at 
> org.apache.myfaces.application.ApplicationImpl._createEvent(ApplicationImpl.java:1292)
>   at 
> org.apache.myfaces.application.ApplicationImpl._traverseListenerList(ApplicationImpl.java:1484)
>   at 
> org.apache.myfaces.application.ApplicationImpl.publishEvent(ApplicationImpl.java:437)
>   at 
> org.apache.myfaces.application.ApplicationImpl.publishEvent(ApplicationImpl.java:459)
>   at 
> org.apache.myfaces.lifecycle.RestoreViewExecutor.execute(RestoreViewExecutor.java:118)
>   at 
> org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:121)
>   at 
> org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:80)
>   at 
> javax.faces.webapp.FacesServlet._handleStandardRequest(FacesServlet.java:423)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (MYFACES-2147) NoSuchMethodException when instantiating SystemEvent objects

2009-02-08 Thread Jan-Kees van Andel (JIRA)
NoSuchMethodException when instantiating SystemEvent objects


 Key: MYFACES-2147
 URL: https://issues.apache.org/jira/browse/MYFACES-2147
 Project: MyFaces Core
  Issue Type: Bug
  Components: JSR-314
Affects Versions: 2.0.0-alpha
Reporter: Jan-Kees van Andel


This error occurs when rendering an arbitrary page.

It is caused by the Class.getConstructor(Class) not being aware of subclasses.

SystemEvent has a constructor with one parameter of type Object, but different 
subclasses have different constructors.

Caused by: java.lang.NoSuchMethodException: 
javax.faces.event.AfterAddToParentEvent.(java.lang.Object)
at java.lang.Class.getConstructor0(Class.java:2706)
at java.lang.Class.getConstructor(Class.java:1657)
at 
org.apache.myfaces.application.ApplicationImpl._createEvent(ApplicationImpl.java:1292)
at 
org.apache.myfaces.application.ApplicationImpl._traverseListenerList(ApplicationImpl.java:1484)
at 
org.apache.myfaces.application.ApplicationImpl.publishEvent(ApplicationImpl.java:437)
at 
org.apache.myfaces.application.ApplicationImpl.publishEvent(ApplicationImpl.java:459)
at 
org.apache.myfaces.lifecycle.RestoreViewExecutor.execute(RestoreViewExecutor.java:118)
at 
org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:121)
at 
org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:80)
at 
javax.faces.webapp.FacesServlet._handleStandardRequest(FacesServlet.java:423)


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (MYFACES-2146) Bug in UIViewRoot causes Exception in popComponentFromEL()

2009-02-08 Thread Jan-Kees van Andel (JIRA)
Bug in UIViewRoot causes Exception in popComponentFromEL()
--

 Key: MYFACES-2146
 URL: https://issues.apache.org/jira/browse/MYFACES-2146
 Project: MyFaces Core
  Issue Type: Bug
  Components: JSR-314
Affects Versions: 2.0.0-alpha
Reporter: Jan-Kees van Andel


UIViewRoot.encodeBegin() is missing a code path.
Because of this, the UIViewRoot instance is not added to the current component 
stack.
This causes an exception in UIComponent.popComponentFromEL(), because pop is 
being called on an empty stack.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Updated: (MYFACES-2146) Bug in UIViewRoot causes Exception in popComponentFromEL()

2009-02-08 Thread Jan-Kees van Andel (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYFACES-2146?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jan-Kees van Andel updated MYFACES-2146:


Status: Patch Available  (was: Open)

> Bug in UIViewRoot causes Exception in popComponentFromEL()
> --
>
> Key: MYFACES-2146
> URL: https://issues.apache.org/jira/browse/MYFACES-2146
> Project: MyFaces Core
>  Issue Type: Bug
>  Components: JSR-314
>Affects Versions: 2.0.0-alpha
>Reporter: Jan-Kees van Andel
>
> UIViewRoot.encodeBegin() is missing a code path.
> Because of this, the UIViewRoot instance is not added to the current 
> component stack.
> This causes an exception in UIComponent.popComponentFromEL(), because pop is 
> being called on an empty stack.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (MYFACES-2142) ClassCastException in JspViewHandlerImpl: ResponseSwitch != HttpServletResponse

2009-01-26 Thread Jan-Kees van Andel (JIRA)
ClassCastException in JspViewHandlerImpl: ResponseSwitch != HttpServletResponse
---

 Key: MYFACES-2142
 URL: https://issues.apache.org/jira/browse/MYFACES-2142
 Project: MyFaces Core
  Issue Type: Bug
  Components: JSR-314
Reporter: Jan-Kees van Andel


While running the latest myfaces2 source code with a test JSP page, I've 
encountered the following error.
java.lang.ClassCastException: org.apache.myfaces.context.servlet.ResponseSwitch 
cannot be cast to javax.servlet.http.HttpServletResponse
at 
org.apache.myfaces.application.jsp.JspViewHandlerImpl.buildView(JspViewHandlerImpl.java:487)
at 
org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspViewHandlerImpl.java:343)
at 
org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:45)
at 
org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:167)
at 
javax.faces.webapp.FacesServlet._handleStandardRequest(FacesServlet.java:428)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:182)
at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
etc..

As far as I can see, this is a bug, since there is an explicit cast to 
HttpServletResponse and the given parameter is of type ResponseSwitch, which is 
not a HttpServletResponse.

It looks like a recent change...

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2140) Add annotation processing logic

2009-01-26 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2140?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12667360#action_12667360
 ] 

Jan-Kees van Andel commented on MYFACES-2140:
-

My first implementation will use x-finder, along with it's ASM dependencies, 
just to get the feature in quite fast.

Improvements can be made later (optimizations in the classpath scanning 
algorithm or a cleaner, more OO, implementation).

See: 
http://www.nabble.com/Scanning-for-annotated-classes-in-MyFaces-2-to21318418.html#a21318418

> Add annotation processing logic
> ---
>
> Key: MYFACES-2140
> URL: https://issues.apache.org/jira/browse/MYFACES-2140
> Project: MyFaces Core
>  Issue Type: New Feature
>  Components: JSR-314
>Reporter: Jan-Kees van Andel
>
> JSF 2.0 specifies the use of the following annotations for Managed Bean 
> configuration:
> - ManagedBean
> - ManagedBeans
> - ManagedProperty
> - RequestScoped
> - SessionScoped
> - ViewScoped
> - ApplicationScoped
> - NoneScoped
> The annotations are already there, it now needs processing logic.
> I'm on it.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (MYFACES-2140) Add annotation processing logic

2009-01-26 Thread Jan-Kees van Andel (JIRA)
Add annotation processing logic
---

 Key: MYFACES-2140
 URL: https://issues.apache.org/jira/browse/MYFACES-2140
 Project: MyFaces Core
  Issue Type: New Feature
  Components: JSR-314
Reporter: Jan-Kees van Andel


JSF 2.0 specifies the use of the following annotations for Managed Bean 
configuration:
- ManagedBean
- ManagedBeans
- ManagedProperty
- RequestScoped
- SessionScoped
- ViewScoped
- ApplicationScoped
- NoneScoped

The annotations are already there, it now needs processing logic.
I'm on it.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Updated: (MYFACES-2131) Import to internal Sun class

2009-01-06 Thread Jan-Kees van Andel (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYFACES-2131?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jan-Kees van Andel updated MYFACES-2131:


Status: Patch Available  (was: Open)

> Import to internal Sun class
> 
>
> Key: MYFACES-2131
> URL: https://issues.apache.org/jira/browse/MYFACES-2131
> Project: MyFaces Core
>  Issue Type: Bug
>  Components: JSR-314
>Affects Versions: 2.0.0-alpha
>Reporter: Jan-Kees van Andel
>Priority: Minor
>
> In org.apache.myfaces.context.servlet.FacesContextImpl, there is an import to 
> import sun.misc.Regexp.
> The error in my IDE:
> Access restriction: The type Regexp is not accessible due to restriction on 
> required library D:\dev\Java\jdk1.6.0_10\jre\lib\rt.jar
> It is not used, however, so removing it should be no problem.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (MYFACES-2131) Import to internal Sun class

2009-01-06 Thread Jan-Kees van Andel (JIRA)
Import to internal Sun class


 Key: MYFACES-2131
 URL: https://issues.apache.org/jira/browse/MYFACES-2131
 Project: MyFaces Core
  Issue Type: Bug
  Components: JSR-314
Affects Versions: 2.0.0-alpha
Reporter: Jan-Kees van Andel
Priority: Minor


In org.apache.myfaces.context.servlet.FacesContextImpl, there is an import to 
import sun.misc.Regexp.

The error in my IDE:
Access restriction: The type Regexp is not accessible due to restriction on 
required library D:\dev\Java\jdk1.6.0_10\jre\lib\rt.jar

It is not used, however, so removing it should be no problem.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2088) Add ExceptionHandler class

2008-12-13 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2088?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12656282#action_12656282
 ] 

Jan-Kees van Andel commented on MYFACES-2088:
-

Deleted patch, because of possible license issues.

@Leonardo: Check 
http://www.nabble.com/JSF-2---ExceptionHandlerWrapper-seems-to-be-missing-a-method-td20747896.html

> Add ExceptionHandler class
> --
>
> Key: MYFACES-2088
> URL: https://issues.apache.org/jira/browse/MYFACES-2088
> Project: MyFaces Core
>  Issue Type: Task
>  Components: JSR-314
>Affects Versions: 2.0.0-alpha
>Reporter: Jan-Kees van Andel
>Assignee: Leonardo Uribe
>Priority: Minor
> Fix For: 2.0.0-alpha
>
>
> The spec specifies the ExceptionHandler class, which is the central point of 
> error handling in a JSF implementation.
> It also specifies two accompanying files: ExceptionHandlerFactory and 
> ExceptionHandlerWrapper.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2097) Add RenderKitWrapper class

2008-12-13 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2097?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12656281#action_12656281
 ] 

Jan-Kees van Andel commented on MYFACES-2097:
-

Deleted patch, because of possible license issues.

> Add RenderKitWrapper class
> --
>
> Key: MYFACES-2097
> URL: https://issues.apache.org/jira/browse/MYFACES-2097
> Project: MyFaces Core
>  Issue Type: Task
>  Components: JSR-314
>Affects Versions: 2.0.0-alpha
>Reporter: Jan-Kees van Andel
>Priority: Minor
>
> The spec specifies a class RenderKitWrapper, a wrapper for RenderKit.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2095) Add managed bean scope annotations

2008-12-13 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2095?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12656279#action_12656279
 ] 

Jan-Kees van Andel commented on MYFACES-2095:
-

Deleted patch, because of possible license issues

> Add managed bean scope annotations
> --
>
> Key: MYFACES-2095
> URL: https://issues.apache.org/jira/browse/MYFACES-2095
> Project: MyFaces Core
>  Issue Type: Task
>  Components: JSR-314
>Affects Versions: 2.0.0-alpha
>Reporter: Jan-Kees van Andel
>Priority: Minor
>
> JSF 2.0 specifies 5 annotations that can be used to configure a managed bean 
> scope:
> - ApplicationScoped
> - SessionScoped
> - ViewScoped
> - RequestScoped
> - NoneScoped
> A.t.m. those annotations are missing.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2094) Add InitialStateEvent class

2008-12-13 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2094?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12656280#action_12656280
 ] 

Jan-Kees van Andel commented on MYFACES-2094:
-

Deleted patch, because of possible license issues.

> Add InitialStateEvent class
> ---
>
> Key: MYFACES-2094
> URL: https://issues.apache.org/jira/browse/MYFACES-2094
> Project: MyFaces Core
>  Issue Type: Task
>  Components: JSR-314
>Affects Versions: 2.0.0-alpha
>Reporter: Jan-Kees van Andel
>Priority: Minor
>
> JSF 2.0 EDR2 specifies some new event types, like InitialStateEvent.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2098) Add RegexValidator class

2008-12-13 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2098?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12656273#action_12656273
 ] 

Jan-Kees van Andel commented on MYFACES-2098:
-

I'm gonna look at the Trinidad Validator and try to create a best of both world 
thing.

> Add RegexValidator class
> 
>
> Key: MYFACES-2098
> URL: https://issues.apache.org/jira/browse/MYFACES-2098
> Project: MyFaces Core
>  Issue Type: Task
>  Components: JSR-314
>Affects Versions: 2.0.0-alpha
>Reporter: Jan-Kees van Andel
>Priority: Minor
> Attachments: RegexValidator.patch
>
>
> The JSF 2.0 spec specifies one new Validator: the RegexValidator which 
> validates a string value against a java.util.regex Regular Expression.
> A.t.m. it doesn't exist yet.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2096) Make DataModel types generic

2008-12-13 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2096?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12656272#action_12656272
 ] 

Jan-Kees van Andel commented on MYFACES-2096:
-

That's okay. I'll look at it this weekend.

> Make DataModel types generic
> 
>
> Key: MYFACES-2096
> URL: https://issues.apache.org/jira/browse/MYFACES-2096
> Project: MyFaces Core
>  Issue Type: Task
>  Components: JSR-314
>Affects Versions: 2.0.0-alpha
>Reporter: Jan-Kees van Andel
>Priority: Minor
> Attachments: GenericDataModels.patch
>
>
> According to the spec, DataModel and its subclasses must be generic.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2083) FacesContext contains several unnecessary methods

2008-12-02 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2083?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12652313#action_12652313
 ] 

Jan-Kees van Andel commented on MYFACES-2083:
-

I think it was added in EDR 2, since I downloaded the latest JavaDocs from the 
JSR 314 site.

The JavaDocs specified a PartialViewContext class, which is accessible from 
FacesContext#getPartialViewContext(). This method (creates and) returns the 
PartialViewContext for this request.

> FacesContext contains several unnecessary methods
> -
>
> Key: MYFACES-2083
> URL: https://issues.apache.org/jira/browse/MYFACES-2083
> Project: MyFaces Core
>  Issue Type: Bug
>  Components: JSR-314
>Affects Versions: 2.0.0-alpha
>Reporter: Jan-Kees van Andel
> Attachments: FacesContext20.patch
>
>
> Several fields and methods are currently put in FacesContext, but should 
> (according to the JSF 2.0 spec) be placed inside another class: 
> PartialViewContext.
> They are:
> public static final String NO_PARTIAL_PHASE_CLIENT_IDS = "none";
> public static final String PARTIAL_EXECUTE_PARAM_NAME = 
> "javax.faces.partial.execute";
> public static final String PARTIAL_RENDER_PARAM_NAME = 
> "javax.faces.partial.render";
> public List getExecutePhaseClientIds()
> public ResponseWriter getPartialResponseWriter()
> public List getRenderPhaseClientIds()
> public void setExecutePhaseClientIds(List executePhaseClientIds)
> public void setRenderAll(boolean renderAll)
> public void setRenderPhaseClientIds(List renderPhaseClientIds)
> public boolean isAjaxRequest()
> public boolean isExecuteNone()
> public boolean isPostback()
> public boolean isRenderAll()
> public boolean isRenderNone()

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (MYFACES-2098) Add RegexValidator class

2008-12-01 Thread Jan-Kees van Andel (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2098?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12652003#action_12652003
 ] 

Jan-Kees van Andel commented on MYFACES-2098:
-

I didn't know about a Trinidad regex Validator. I've created it from scratch.

Didn't look for any Validator code on the internet, because I wanted to make 
sure it was JSF 2.0 compliant.

> Add RegexValidator class
> 
>
> Key: MYFACES-2098
> URL: https://issues.apache.org/jira/browse/MYFACES-2098
> Project: MyFaces Core
>  Issue Type: Task
>  Components: JSR-314
>Affects Versions: 2.0.0-alpha
>Reporter: Jan-Kees van Andel
>Priority: Minor
> Attachments: RegexValidator.patch
>
>
> The JSF 2.0 spec specifies one new Validator: the RegexValidator which 
> validates a string value against a java.util.regex Regular Expression.
> A.t.m. it doesn't exist yet.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Updated: (MYFACES-2098) Add RegexValidator class

2008-11-30 Thread Jan-Kees van Andel (JIRA)

 [ 
https://issues.apache.org/jira/browse/MYFACES-2098?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jan-Kees van Andel updated MYFACES-2098:


Status: Patch Available  (was: Open)

> Add RegexValidator class
> 
>
> Key: MYFACES-2098
> URL: https://issues.apache.org/jira/browse/MYFACES-2098
> Project: MyFaces Core
>  Issue Type: Task
>  Components: JSR-314
>Affects Versions: 2.0.0-alpha
>Reporter: Jan-Kees van Andel
>Priority: Minor
>
> The JSF 2.0 spec specifies one new Validator: the RegexValidator which 
> validates a string value against a java.util.regex Regular Expression.
> A.t.m. it doesn't exist yet.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (MYFACES-2098) Add RegexValidator class

2008-11-30 Thread Jan-Kees van Andel (JIRA)
Add RegexValidator class


 Key: MYFACES-2098
 URL: https://issues.apache.org/jira/browse/MYFACES-2098
 Project: MyFaces Core
  Issue Type: Task
  Components: JSR-314
Affects Versions: 2.0.0-alpha
Reporter: Jan-Kees van Andel
Priority: Minor


The JSF 2.0 spec specifies one new Validator: the RegexValidator which 
validates a string value against a java.util.regex Regular Expression.

A.t.m. it doesn't exist yet.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



  1   2   >