[jira] Created: (MYFACES-2235) ProjectStage extension

2009-05-15 Thread JIRA
ProjectStage extension
--

 Key: MYFACES-2235
 URL: https://issues.apache.org/jira/browse/MYFACES-2235
 Project: MyFaces Core
  Issue Type: Improvement
  Components: JSR-314
Affects Versions: 2.0.0-alpha
Reporter: Matthias Weßendorf
Assignee: Matthias Weßendorf


currently jsf's standard ProjectStage is a bit poor, it does not provide 
support for
system props... In order to make that happen we (myfaces) could provide
an extension for that...

Wo that we could support something like:

projectStage = System.getProperty(org.apache.myfaces.PROJECT_STAGE)

Ordering would be:
-jndi
-web.xml
-sys-props

the current order is JNDI, followed by web.xml

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



Re: [myfaces 2.0] ProjectStage extension ?

2009-05-15 Thread Matthias Wessendorf
On Fri, May 15, 2009 at 1:19 AM, Simon Lessard
simon.lessar...@gmail.com wrote:
 Well I guess you're right, there's no way that the property will be set
 during the tests.

created ticket
https://issues.apache.org/jira/browse/MYFACES-2235

will commit change soon


-M



 On Thu, May 14, 2009 at 5:52 PM, Matthias Wessendorf mwessend...@gmail.com
 wrote:

 I guess the tck has no org.apache.** cfg param as sys prop

 Sent from my iPod.
 Am 14.05.2009 um 22:45 schrieb Simon Lessard simon.lessar...@gmail.com:

 Sounds pretty decent to me, we'll just have to make sure we still pass the
 TCK after though since the spec also define the default.

 ~ Simon

 On Thu, May 14, 2009 at 2:27 PM, Matthias Wessendorf
 mwessend...@gmail.com wrote:

 Of course ordering after the standard...

 Sent from my iPod.
 Am 14.05.2009 um 20:18 schrieb Gerhard Petracek
 gerhard.petra...@gmail.com:

 +1

 regards,
 gerhard



 2009/5/14 Matthias Wessendorf mat...@apache.org

 Hey,

 currently ProjectStage is a bit poor, it does not provide support for
 system props... In order to make that happen we (myfaces) could provide
 an extension for that...

 so that we would support something like:

 projectStage = System.getProperty(org.apache.myfaces.PROJECT_STAGE)

 what do you think ?

 (as far as I know this is present in JSF 2.1 as well)

 -Matthias

 --
 Matthias Wessendorf

 blog: http://matthiaswessendorf.wordpress.com/
 sessions: http://www.slideshare.net/mwessendorf
 twitter: http://twitter.com/mwessendorf







-- 
Matthias Wessendorf

blog: http://matthiaswessendorf.wordpress.com/
sessions: http://www.slideshare.net/mwessendorf
twitter: http://twitter.com/mwessendorf


[jira] Commented: (MYFACES-2218) We have the error : context must not be null in VariableResolverImpl, in MyFaces during the execution of the system.

2009-05-15 Thread Leonardo Uribe (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2218?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=12709754#action_12709754
 ] 

Leonardo Uribe commented on MYFACES-2218:
-

org.apache.myfaces.el.unified.FacesELContext has this code it its constructor:

public FacesELContext(ELResolver elResolver,
  FacesContext facesContext) {
this._elResolver = elResolver;
putContext(FacesContext.class, facesContext);

Theorically the java compiler adds automatically a call to super(), so 
putContext method should work without problem. Maybe some wrapper of 
FacesContext uses its custom ELContext, so the error could be related to that 
instance. At first view, I think the problem is not related to myfaces.

 We have the error : context must not be null in VariableResolverImpl, in 
 MyFaces during the execution of the system.
 

 Key: MYFACES-2218
 URL: https://issues.apache.org/jira/browse/MYFACES-2218
 Project: MyFaces Core
  Issue Type: Bug
Affects Versions: 1.2.3
 Environment: We are using Weblogic Server 10.0MP1, RedHat Enterprise 
 Server 4, and JVM is JRockit 5.0.11
Reporter: Eduardo Felter Simone
Priority: Critical
   Original Estimate: 24h
  Remaining Estimate: 24h

 We receive the following error:
 24 Abr 2009 11:11:43,895 ERROR StackTrace:
 java.lang.NullPointerException: context must not be null
 at 
 org.apache.myfaces.el.VariableResolverImpl.resolveVariable(VariableResolverImpl.java:47)
 at 
 org.apache.myfaces.el.convert.VariableResolverToELResolver.getValue(VariableResolverToELResolver.java:93)
 at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:143)
 at 
 org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.access$301(FacesCompositeELResolver.java:46)
 at 
 org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver$4.invoke(FacesCompositeELResolver.java:108)
 at 
 org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.invoke(FacesCompositeELResolver.java:148)
 at 
 org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:104)
 at com.sun.el.parser.AstIdentifier.getValue(AstIdentifier.java:68)
 at com.sun.el.parser.AstNot.getValue(AstNot.java:46)
 at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:192)
 at 
 javax.faces.component._ComponentUtils.getExpressionValue(_ComponentUtils.java:233)
 at 
 javax.faces.component.UIComponentBase.getExpressionValue(UIComponentBase.java:1155)
 at javax.faces.component.UIComponentBase.isRendered(UIComponentBase.java:1225)
 at 
 javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:685)
 at 
 javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:688)
 at org.ajax4jsf.component.AjaxViewRoot.processPhase(AjaxViewRoot.java:238)
 at org.ajax4jsf.component.AjaxViewRoot.processDecodes(AjaxViewRoot.java:409)
 at 
 org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:103)
 at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:76)
 at 
 pt.ptinovacao.components.aeolus.web.servlet.AeolusFacesServlet.service(AeolusFacesServlet.java:148)
 at 
 br.com.vivo.vivo360.ui.servlet.Vivo360FacesServlet.service(Vivo360FacesServlet.java:82)
 at 
 weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:226)
 at 
 weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:124)
 at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:283)
 at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
 at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
 at 
 br.com.vivo.vivo360.ui.servlet.SessionExpiredFilter.doFilter(SessionExpiredFilter.java:51)
 at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
 at br.com.vivo.vivo360.ui.servlet.ErrorFilter.doFilter(ErrorFilter.java:63)
 at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
 at 
 org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147)
 at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
 at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)
 at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
 at 
 org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:390)
 at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:517)
 at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
 at 
 weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:26)
 at 

[jira] Updated: (MYFACES-2165) concurrent issue in initializing myfaces 1.1.6

2009-05-15 Thread Leonardo Uribe (JIRA)

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

Leonardo Uribe updated MYFACES-2165:


Status: Patch Available  (was: Open)

 concurrent issue in initializing myfaces 1.1.6
 --

 Key: MYFACES-2165
 URL: https://issues.apache.org/jira/browse/MYFACES-2165
 Project: MyFaces Core
  Issue Type: Bug
Affects Versions: 1.1.6
 Environment: tomcat 6.0.18 java 1.6.0_06
Reporter: xuxiankun
Priority: Critical
 Attachments: MYFACES-2165.patch


 after starting tomcat, we will get a error when i visit a faces page. we can 
 fix this issue by restarting tomcat. so i think it's concurrent issue.
 java.lang.NullPointerException
   at 
 org.apache.myfaces.application.jsp.JspViewHandlerImpl.getServletMapping(JspViewHandlerImpl.java:388)
   at 
 org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspViewHandlerImpl.java:222)
   at 
 org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108)
   at 
 org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:216)
   at 
 org.apache.shale.validator.faces.ValidatorViewHandler.renderView(ValidatorViewHandler.java:130)
   at 
 org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108)
   at 
 org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:216)
   at 
 org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41)
   at 
 org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:146)
   at javax.faces.webapp.FacesServlet.service(FacesServlet.java:147)
   at 
 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
   at 
 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at 
 cn.com.brilliance.begen.webapp.servlet.BeGenFilter.doFilter(BeGenFilter.java:56)
   at 
 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at 
 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:141)
   at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:281)
   at 
 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at 
 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at 
 org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
   at 
 org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
   at 
 org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
   at 
 org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
   at 
 cn.com.brilliance.begen.webapp.servlet.LoginServlet.doPost(LoginServlet.java:91)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
   at 
 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
   at 
 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at 
 org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
   at 
 org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
   at 
 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at 
 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at 
 org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
   at 
 org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
   at 
 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   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 
 

Re: [myfaces 2.0] ProjectStage extension ?

2009-05-15 Thread Cagatay Civici
+1

On Fri, May 15, 2009 at 8:21 AM, Matthias Wessendorf mat...@apache.orgwrote:

 On Fri, May 15, 2009 at 1:19 AM, Simon Lessard
 simon.lessar...@gmail.com wrote:
  Well I guess you're right, there's no way that the property will be set
  during the tests.

 created ticket
 https://issues.apache.org/jira/browse/MYFACES-2235

 will commit change soon


 -M


 
  On Thu, May 14, 2009 at 5:52 PM, Matthias Wessendorf 
 mwessend...@gmail.com
  wrote:
 
  I guess the tck has no org.apache.** cfg param as sys prop
 
  Sent from my iPod.
  Am 14.05.2009 um 22:45 schrieb Simon Lessard simon.lessar...@gmail.com
 :
 
  Sounds pretty decent to me, we'll just have to make sure we still pass
 the
  TCK after though since the spec also define the default.
 
  ~ Simon
 
  On Thu, May 14, 2009 at 2:27 PM, Matthias Wessendorf
  mwessend...@gmail.com wrote:
 
  Of course ordering after the standard...
 
  Sent from my iPod.
  Am 14.05.2009 um 20:18 schrieb Gerhard Petracek
  gerhard.petra...@gmail.com:
 
  +1
 
  regards,
  gerhard
 
 
 
  2009/5/14 Matthias Wessendorf mat...@apache.org
 
  Hey,
 
  currently ProjectStage is a bit poor, it does not provide support for
  system props... In order to make that happen we (myfaces) could
 provide
  an extension for that...
 
  so that we would support something like:
 
  projectStage = System.getProperty(org.apache.myfaces.PROJECT_STAGE)
 
  what do you think ?
 
  (as far as I know this is present in JSF 2.1 as well)
 
  -Matthias
 
  --
  Matthias Wessendorf
 
  blog: http://matthiaswessendorf.wordpress.com/
  sessions: http://www.slideshare.net/mwessendorf
  twitter: http://twitter.com/mwessendorf
 
 
 
 



 --
 Matthias Wessendorf

 blog: http://matthiaswessendorf.wordpress.com/
 sessions: http://www.slideshare.net/mwessendorf
 twitter: http://twitter.com/mwessendorf



Re: [source control] git and the ASF ...

2009-05-15 Thread Werner Punz

Matthias Wessendorf schrieb:

Werner,

according to here:
http://www.apache.org/dev/git.html

we need to provide the following information, for the INFRA jira ticket:
* Name of the codebase, for example Apache Tika
* Name of the requested Git mirror, for example tika.git
* Subversion path of the codebase, for example /lucene/tika/
* Subversion layout, in case it is different from the standard
trunk, branches, tags structure.

I think we may start with MyFaces core? Or do you think we should add
*all* the subprojects?


+1 to core

I think core is find for now and later we can add tomahawk and
orchestra etc... have in mind that git basically mirrors all revisions 
and you cannot checkout subprojects like in svn, so having a split is 
preferrable.


Werner



Re: [source control] git and the ASF ...

2009-05-15 Thread Werner Punz

Matthias Wessendorf schrieb:
core


Ok, I filed this:
https://issues.apache.org/jira/browse/INFRA-2053

maybe we should also think about making the JSF 1.1.x stuff a branch ...
(since we already work on 2.0.x)


+1

1.1.x branch
1.2 trunk
2.0 branch

instead of

1.1 trunk
1.2 trunk_1.2
2.0 branch

this also helps the infrastructure people!






[MyFaces CORE] SVN layout (was: Re: [source control] git and the ASF ...)

2009-05-15 Thread Matthias Wessendorf
Hi,
...
 Ok, I filed this:
 https://issues.apache.org/jira/browse/INFRA-2053

 maybe we should also think about making the JSF 1.1.x stuff a branch ...
 (since we already work on 2.0.x)

what do people think if the 1.2 stuff becomes trunk
And the following efforts are on a branch:
-2.0.x
-1.1.x

-Matthias



 -Matthias


 I think core is find for now and later we can add tomahawk and
 orchestra etc... have in mind that git basically mirrors all revisions and
 you cannot checkout subprojects like in svn, so having a split is
 preferrable.

 Werner





 --
 Matthias Wessendorf

 blog: http://matthiaswessendorf.wordpress.com/
 sessions: http://www.slideshare.net/mwessendorf
 twitter: http://twitter.com/mwessendorf




-- 
Matthias Wessendorf

blog: http://matthiaswessendorf.wordpress.com/
sessions: http://www.slideshare.net/mwessendorf
twitter: http://twitter.com/mwessendorf


Re: [source control] git and the ASF ...

2009-05-15 Thread Matthias Wessendorf
On Fri, May 15, 2009 at 11:37 AM, Werner Punz werner.p...@gmail.com wrote:
 Matthias Wessendorf schrieb:
 core

 Ok, I filed this:
 https://issues.apache.org/jira/browse/INFRA-2053

 maybe we should also think about making the JSF 1.1.x stuff a branch ...
 (since we already work on 2.0.x)

 +1

 1.1.x branch
 1.2 trunk
 2.0 branch

hehe :-) just wrote a similar email :-)

-Matthias


 instead of

 1.1 trunk
 1.2 trunk_1.2
 2.0 branch

 this also helps the infrastructure people!








-- 
Matthias Wessendorf

blog: http://matthiaswessendorf.wordpress.com/
sessions: http://www.slideshare.net/mwessendorf
twitter: http://twitter.com/mwessendorf


Re: [MyFaces CORE] SVN layout (was: Re: [source control] git and the ASF ...)

2009-05-15 Thread Werner Punz

Matthias Wessendorf schrieb:

Hi,
...

Ok, I filed this:
https://issues.apache.org/jira/browse/INFRA-2053

maybe we should also think about making the JSF 1.1.x stuff a branch ...
(since we already work on 2.0.x)


what do people think if the 1.2 stuff becomes trunk
And the following efforts are on a branch:
-2.0.x
-1.1.x


+1



Re: MyFaces 2.0 PartialResponseWriter + EVALs

2009-05-15 Thread Werner Punz
Ok I added a dynamically loading loadScript function to our javascript 
_Utils class/function.

The code basically resolves the script src handling
aspect by loading the script
via synchronous xhr and doing a global eval on the script!

This way we dont have dom manipulations just to do the script src part
on the client side, and to my knowledge the speed drop is neglectable!
(Most javascript libraries do dynamic loading that way)

The next step is to find out if the RI has added the start and endTag 
functionality  the way Trinidad and others do!
An if yes we have to implement it (I have started on this already) if 
no, I am going to file a bugreport!



Werner


Werner Punz schrieb:

Hia Ganesh, I have to check the latest codebase,
the version i have which is a few weeks old, did not have
anything integrated...

The main problem I see not doing it is, that usually
the response writer already is in update stage when the components 
encode method is called which means

every out goes into update so component authors cannot even
trigger the eval part properly!

If you want to utilize the eval part properly you have to integrate
this automatically one way or the other.
I will check the latest codebase this week and if they do not have it 
integrated I will file a bug report for Mojarra, they might probably 
have overlooked this aspect on the implementors side (definitely not on 
the spec side hence the eval cycle).


I probably would not know it either on the first look,
if I hadn´t worked on those aspects
of Trinidad within the boundaries of a project where we tried
to integrate PPR!


Werner


Ganesh schrieb:

Hi Werner,

Actually, I'm not quite sure which of the cases [1] to [4] (see below) 
you are referring to. Did you check the behaviour of Mojarra on this? 
In which case does it return eval? I'd say our PartialResponseWriter 
should work along the same basic line. My personal guess is they 
return eval either in case [1] or [3]. I'll try and find some time 
to set up a test on this during the next week.


Best Regards,
Ganesh

Werner Punz schrieb:
I have to evaluate that because generally the insertBefore did not 
trigger on all non IE browsers in the embedded case (Safari for 
instance failed as well, while Opera was working) so I had to embed 
our browser check code...
Anyway the safe bet probably is to load the script synchronously via 
xhr and eval it manually in that case!

The unsafe bet is to have the browser doing this automatically.
Either way is fine with me since both methods are just a few lines of 
code.

My personal question was more along the lines if there are any obstacles
to add the eval behavior as described to the PartialResponseWriter, 
and how does facelets trigger the response writer in this regard.


(Facelets theorectically allows to use scripts just as plain html
thus we cannot use the startElement(script approach in this case
unless facelets can map single tags into startElement calls)

Werner

   Hi,

   There are four kinds of script constructs I can image may 
becoming pulled in through an ajax request:


   [1] component does startElement(script, component) ... 
endElement(script)
   [2] XHTML markup contains script type=text/javascript 
.../script (or component writes this directly to the stream)

   [3] markup contains h:outputSrcipt
   [4] markup contains script src=...

   IMHO only [1] qualifies to be included in the eval 
section of
   the AJAX response by the PartialResponseWriter. Execution 
on the

   Javascript side can happen with
   window.execScript(theActualScriptContent) like Matthias 
proposed.

   Matthias, can you explain the advantages of this?

   [2] should be recognized by our embedded Javascript 
runScripts
   function which in fact also does window.execScript. 
Werner, I

   think we agree on this. Everything else would cause parsing
of the
   XHTML markup.

   For [3] Werners document.createElement(script) approach 
can be

   suitable though I'm not sure how you want to send this down
to the
   browser. Are you planning to run on the extension tag 
in the

   ajax XMLSchema?

   Werner, your example for document.createElement(script) 
was

   based on case [4]. But how do you want to do this? Are you
   planning to parse all the markup for script tags with src
   attributes? Maybe here an extension to our embedded 
Javascript
   runScripts function could make sense? This could also 
solve [3]!


   Best regards,
   Ganesh









Mojarra and us...

2009-05-15 Thread Werner Punz
Hello everyone I wanted to start a legal discussion here regarding the 
status of Mojarra and our codebase.


As far as I understood it is following.
The mojarra license prevents us from using their code, while they can 
use ours, this is fine with me the Apache license is more liberal.


The Mojarra and Apache license however do not prevent that we can have 
an occasional look into the mojarra codebase to check things out which
are not 100% clearly defined, so that we are in sync there, or to 
prevent external patches being applied which might have mojarra code 
inside (we had that once in the past with comments copy pasted from the 
spec or mojarra)


Am I right or wrong?

I am just asking to clear this up once and for all.




Werner




Re: Mojarra and us...

2009-05-15 Thread Matthias Wessendorf
On Fri, May 15, 2009 at 2:18 PM, Werner Punz werner.p...@gmail.com wrote:
 Hello everyone I wanted to start a legal discussion here regarding the
 status of Mojarra and our codebase.

 As far as I understood it is following.
 The mojarra license prevents us from using their code, while they can use
 ours, this is fine with me the Apache license is more liberal.

+1
(OT *and* a side-info: OpenJDK is using Apache Harmony code :-) )


 The Mojarra and Apache license however do not prevent that we can have an
 occasional look into the mojarra codebase to check things out which
 are not 100% clearly defined, so that we are in sync there, or to prevent
 external patches being applied which might have mojarra code inside (we had
 that once in the past with comments copy pasted from the spec or mojarra)

 Am I right or wrong?

not sure on the legal side, but I find it *is* critical to take a look
at such a code
base.

-Matthias


 I am just asking to clear this up once and for all.




 Werner






-- 
Matthias Wessendorf

blog: http://matthiaswessendorf.wordpress.com/
sessions: http://www.slideshare.net/mwessendorf
twitter: http://twitter.com/mwessendorf


Re: Mojarra and us...

2009-05-15 Thread Werner Punz
I have to explain, I noticed that we probably need a special response 
writer impl which tries to determine script blocks the way
Trinidad does it to send the scripts as separate entities in the ppr 
response. I wanted to check if Mojarra already had something along those 
lines implemented and if not, wanted to send them a bug notification, 
because this is the standard way to handle inline scripts over the 
component api. (startTag(script usually should trigger a deferred

writing of the next responseWriter commands, in a special eval section)

So before doing this I want to clear this up once and for all!
As I said I am not eager to touch mojarra code in this regard, but I 
personally would prefer to be in sync in both implementations in such 
corner areas partially not covered by the spec!




Werner


Werner Punz schrieb:
Hello everyone I wanted to start a legal discussion here regarding the 
status of Mojarra and our codebase.


As far as I understood it is following.
The mojarra license prevents us from using their code, while they can 
use ours, this is fine with me the Apache license is more liberal.


The Mojarra and Apache license however do not prevent that we can have 
an occasional look into the mojarra codebase to check things out which
are not 100% clearly defined, so that we are in sync there, or to 
prevent external patches being applied which might have mojarra code 
inside (we had that once in the past with comments copy pasted from the 
spec or mojarra)


Am I right or wrong?

I am just asking to clear this up once and for all.




Werner







Re: Mojarra and us...

2009-05-15 Thread Werner Punz

Matthias Wessendorf schrieb:

On Fri, May 15, 2009 at 2:18 PM, Werner Punz werner.p...@gmail.com wrote:

Hello everyone I wanted to start a legal discussion here regarding the
status of Mojarra and our codebase.

As far as I understood it is following.
The mojarra license prevents us from using their code, while they can use
ours, this is fine with me the Apache license is more liberal.


+1
(OT *and* a side-info: OpenJDK is using Apache Harmony code :-) )


The Mojarra and Apache license however do not prevent that we can have an
occasional look into the mojarra codebase to check things out which
are not 100% clearly defined, so that we are in sync there, or to prevent
external patches being applied which might have mojarra code inside (we had
that once in the past with comments copy pasted from the spec or mojarra)

Am I right or wrong?


not sure on the legal side, but I find it *is* critical to take a look
at such a code
base.



This is the question, not looking against the other codebase might 
introduce incompatibilities or errors might be overlooked,

just like I pointed out in the example before,
or even worse, external patches could go into the codebase which come 
straight from the mojarra codebase!



As far as I can see the way the bsd and linux guys handle it is that 
linux freely takes BSD code why the BSD guys dont have a problem looking 
at the linux codebase, but they never ever would copy any code from the 
linux side.




Werner



Re: Mojarra and us...

2009-05-15 Thread Matthias Wessendorf
On Fri, May 15, 2009 at 2:22 PM, Werner Punz werner.p...@gmail.com wrote:
 I have to explain, I noticed that we probably need a special response writer
 impl which tries to determine script blocks the way
 Trinidad does it to send the scripts as separate entities in the ppr
 response. I wanted to check if Mojarra already had something along those

there is a user/dev list for mojarra, right ?

 lines implemented and if not, wanted to send them a bug notification,
 because this is the standard way to handle inline scripts over the component
 api. (startTag(script usually should trigger a deferred
 writing of the next responseWriter commands, in a special eval section)

 So before doing this I want to clear this up once and for all!
 As I said I am not eager to touch mojarra code in this regard, but I
 personally would prefer to be in sync in both implementations in such corner
 areas partially not covered by the spec!

IMO this is critical;

-M




 Werner


 Werner Punz schrieb:

 Hello everyone I wanted to start a legal discussion here regarding the
 status of Mojarra and our codebase.

 As far as I understood it is following.
 The mojarra license prevents us from using their code, while they can use
 ours, this is fine with me the Apache license is more liberal.

 The Mojarra and Apache license however do not prevent that we can have an
 occasional look into the mojarra codebase to check things out which
 are not 100% clearly defined, so that we are in sync there, or to prevent
 external patches being applied which might have mojarra code inside (we had
 that once in the past with comments copy pasted from the spec or mojarra)

 Am I right or wrong?

 I am just asking to clear this up once and for all.




 Werner








-- 
Matthias Wessendorf

blog: http://matthiaswessendorf.wordpress.com/
sessions: http://www.slideshare.net/mwessendorf
twitter: http://twitter.com/mwessendorf


Re: Mojarra and us...

2009-05-15 Thread Matthias Wessendorf
On Fri, May 15, 2009 at 2:27 PM, Werner Punz werner.p...@gmail.com wrote:
 Matthias Wessendorf schrieb:

 On Fri, May 15, 2009 at 2:18 PM, Werner Punz werner.p...@gmail.com
 wrote:

 Hello everyone I wanted to start a legal discussion here regarding the
 status of Mojarra and our codebase.

 As far as I understood it is following.
 The mojarra license prevents us from using their code, while they can use
 ours, this is fine with me the Apache license is more liberal.

 +1
 (OT *and* a side-info: OpenJDK is using Apache Harmony code :-) )

 The Mojarra and Apache license however do not prevent that we can have an
 occasional look into the mojarra codebase to check things out which
 are not 100% clearly defined, so that we are in sync there, or to prevent
 external patches being applied which might have mojarra code inside (we
 had
 that once in the past with comments copy pasted from the spec or mojarra)

 Am I right or wrong?

 not sure on the legal side, but I find it *is* critical to take a look
 at such a code
 base.


 This is the question, not looking against the other codebase might introduce
 incompatibilities or errors might be overlooked,
 just like I pointed out in the example before,
 or even worse, external patches could go into the codebase which come
 straight from the mojarra codebase!

isn't the behavior *clear* defined in the spec ?
If so, go the route;
If not, ask the EG on the why ;-)

-Matthias



 As far as I can see the way the bsd and linux guys handle it is that linux
 freely takes BSD code why the BSD guys dont have a problem looking at the
 linux codebase, but they never ever would copy any code from the linux side.



 Werner





-- 
Matthias Wessendorf

blog: http://matthiaswessendorf.wordpress.com/
sessions: http://www.slideshare.net/mwessendorf
twitter: http://twitter.com/mwessendorf


Re: MyFaces 2.0 PartialResponseWriter + EVALs

2009-05-15 Thread Werner Punz

Ok before anyone is starting  to write one.
I have a script splitting response writer in state
which triggers also on src attributes and
the connected javascripts load the scripts via xhr and do a global eval.
I have not comitted it yet, because I want to compare my code
with Trinidad just to check if I have overlooked something in this area.

I will commit it around next week to be reused in the partial processing 
 area, so that we have a proper script splitting!


Werner




Werner Punz schrieb:
Ok I added a dynamically loading loadScript function to our javascript 
_Utils class/function.

The code basically resolves the script src handling
aspect by loading the script
via synchronous xhr and doing a global eval on the script!

This way we dont have dom manipulations just to do the script src part
on the client side, and to my knowledge the speed drop is neglectable!
(Most javascript libraries do dynamic loading that way)

The next step is to find out if the RI has added the start and endTag 
functionality  the way Trinidad and others do!
An if yes we have to implement it (I have started on this already) if 
no, I am going to file a bugreport!



Werner


Werner Punz schrieb:

Hia Ganesh, I have to check the latest codebase,
the version i have which is a few weeks old, did not have
anything integrated...

The main problem I see not doing it is, that usually
the response writer already is in update stage when the components 
encode method is called which means

every out goes into update so component authors cannot even
trigger the eval part properly!

If you want to utilize the eval part properly you have to integrate
this automatically one way or the other.
I will check the latest codebase this week and if they do not have it 
integrated I will file a bug report for Mojarra, they might probably 
have overlooked this aspect on the implementors side (definitely not 
on the spec side hence the eval cycle).


I probably would not know it either on the first look,
if I hadn´t worked on those aspects
of Trinidad within the boundaries of a project where we tried
to integrate PPR!


Werner


Ganesh schrieb:

Hi Werner,

Actually, I'm not quite sure which of the cases [1] to [4] (see 
below) you are referring to. Did you check the behaviour of Mojarra 
on this? In which case does it return eval? I'd say our 
PartialResponseWriter should work along the same basic line. My 
personal guess is they return eval either in case [1] or [3]. I'll 
try and find some time to set up a test on this during the next week.


Best Regards,
Ganesh

Werner Punz schrieb:
I have to evaluate that because generally the insertBefore did not 
trigger on all non IE browsers in the embedded case (Safari for 
instance failed as well, while Opera was working) so I had to embed 
our browser check code...
Anyway the safe bet probably is to load the script synchronously via 
xhr and eval it manually in that case!

The unsafe bet is to have the browser doing this automatically.
Either way is fine with me since both methods are just a few lines 
of code.
My personal question was more along the lines if there are any 
obstacles
to add the eval behavior as described to the PartialResponseWriter, 
and how does facelets trigger the response writer in this regard.


(Facelets theorectically allows to use scripts just as plain html
thus we cannot use the startElement(script approach in this case
unless facelets can map single tags into startElement calls)

Werner

   Hi,

   There are four kinds of script constructs I can image 
may becoming pulled in through an ajax request:


   [1] component does startElement(script, component) ... 
endElement(script)
   [2] XHTML markup contains script 
type=text/javascript .../script (or component writes this 
directly to the stream)

   [3] markup contains h:outputSrcipt
   [4] markup contains script src=...

   IMHO only [1] qualifies to be included in the eval 
section of
   the AJAX response by the PartialResponseWriter. 
Execution on the

   Javascript side can happen with
   window.execScript(theActualScriptContent) like Matthias 
proposed.

   Matthias, can you explain the advantages of this?

   [2] should be recognized by our embedded Javascript 
runScripts
   function which in fact also does window.execScript. 
Werner, I

   think we agree on this. Everything else would cause parsing
of the
   XHTML markup.

   For [3] Werners document.createElement(script) 
approach can be

   suitable though I'm not sure how you want to send this down
to the
   browser. Are you planning to run on the extension tag 
in the

   ajax XMLSchema?

   Werner, your example for 
document.createElement(script) was

   based on case [4]. But how do you want to do this? Are you
   planning to parse all the markup for script tags with src

Re: svn commit: r774395 - /myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/application/ViewHandlerImpl.java

2009-05-15 Thread Matthias Wessendorf
Hey Mike,

please make sure you are running the build;
I am seeing checkstyle problems for this new file; No license added to
the beginning
of the file...

#fixed in revision 775217

-Matthias

On Wed, May 13, 2009 at 5:10 PM,  mconc...@apache.org wrote:
 Author: mconcini
 Date: Wed May 13 15:10:38 2009
 New Revision: 774395

 URL: http://svn.apache.org/viewvc?rev=774395view=rev
 Log:
 MYFACES-2219 - new ViewHandlerImpl class

 Added:
    
 myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/application/ViewHandlerImpl.java

 Added: 
 myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/application/ViewHandlerImpl.java
 URL: 
 http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/application/ViewHandlerImpl.java?rev=774395view=auto
 ==
 --- 
 myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/application/ViewHandlerImpl.java
  (added)
 +++ 
 myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/application/ViewHandlerImpl.java
  Wed May 13 15:10:38 2009
 @@ -0,0 +1,358 @@
 +package org.apache.myfaces.application;
 +
 +import java.beans.BeanDescriptor;
 +import java.beans.BeanInfo;
 +import java.beans.PropertyDescriptor;
 +import java.io.IOException;
 +import java.util.ArrayList;
 +import java.util.Collection;
 +import java.util.HashMap;
 +import java.util.Iterator;
 +import java.util.List;
 +import java.util.Locale;
 +import java.util.Map;
 +
 +import javax.el.ExpressionFactory;
 +import javax.el.MethodExpression;
 +import javax.el.ValueExpression;
 +import javax.faces.FacesException;
 +import javax.faces.FactoryFinder;
 +import javax.faces.application.Application;
 +import javax.faces.application.StateManager;
 +import javax.faces.application.ViewHandler;
 +import javax.faces.component.ActionSource2;
 +import javax.faces.component.EditableValueHolder;
 +import javax.faces.component.UIComponent;
 +import javax.faces.component.UIViewParameter;
 +import javax.faces.component.UIViewRoot;
 +import javax.faces.context.ExternalContext;
 +import javax.faces.context.FacesContext;
 +import javax.faces.event.ActionEvent;
 +import javax.faces.event.MethodExpressionActionListener;
 +import javax.faces.event.MethodExpressionValueChangeListener;
 +import javax.faces.event.ValueChangeEvent;
 +import javax.faces.render.RenderKitFactory;
 +import javax.faces.render.ResponseStateManager;
 +import javax.faces.validator.MethodExpressionValidator;
 +import javax.faces.view.ActionSource2AttachedObjectHandler;
 +import javax.faces.view.ActionSource2AttachedObjectTarget;
 +import javax.faces.view.AttachedObjectHandler;
 +import javax.faces.view.AttachedObjectTarget;
 +import javax.faces.view.EditableValueHolderAttachedObjectHandler;
 +import javax.faces.view.EditableValueHolderAttachedObjectTarget;
 +import javax.faces.view.ValueHolderAttachedObjectHandler;
 +import javax.faces.view.ValueHolderAttachedObjectTarget;
 +import javax.faces.view.ViewDeclarationLanguage;
 +import javax.faces.view.ViewDeclarationLanguageFactory;
 +import javax.faces.view.ViewMetadata;
 +import javax.servlet.http.HttpServletResponse;
 +
 +import org.apache.commons.logging.Log;
 +import org.apache.commons.logging.LogFactory;
 +import org.apache.myfaces.shared_impl.config.MyfacesConfig;
 +import org.apache.myfaces.shared_impl.renderkit.html.util.JavascriptUtils;
 +
 +public class ViewHandlerImpl extends ViewHandler
 +{
 +    private static final Log log = LogFactory.getLog(ViewHandlerImpl.class);
 +    public static final String FORM_STATE_MARKER = 
 !--@@JSF_FORM_STATE_MARKER@@--;
 +    private ViewHandlerSupport _viewHandlerSupport;
 +    private ViewDeclarationLanguageFactory _vdlFactory;
 +
 +    public ViewHandlerImpl()
 +    {
 +        _vdlFactory = 
 (ViewDeclarationLanguageFactory)FactoryFinder.getFactory(FactoryFinder.VIEW_DECLARATION_LANGUAGE_FACTORY);
 +        if (log.isTraceEnabled())
 +            log.trace(New ViewHandler instance created);
 +    }
 +
 +   �...@override
 +    public String deriveViewId(FacesContext context, String input)
 +    {
 +        String calculatedViewId = input;
 +        try
 +        {
 +            //TODO: JSF 2.0 - need to make sure calculateViewId follows the 
 new algorithm from 7.5.2
 +            calculatedViewId = 
 getViewHandlerSupport().calculateViewId(context, input);
 +        }
 +        catch (InvalidViewIdException e)
 +        {
 +            sendSourceNotFound(context, e.getMessage());
 +        }
 +        return calculatedViewId;
 +    }
 +
 +   �...@override
 +    public String getBookmarkableURL(FacesContext context, String viewId,
 +            MapString, ListString parameters, boolean includeViewParams)
 +    {
 +        MapString, ListString viewParameters;
 +        ExternalContext externalContext = context.getExternalContext();
 +        if (includeViewParams)
 +        {
 +            viewParameters = 

[jira] Resolved: (MYFACES-2235) ProjectStage extension

2009-05-15 Thread JIRA

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

Matthias Weßendorf resolved MYFACES-2235.
-

   Resolution: Fixed
Fix Version/s: 2.0.0-alpha

 ProjectStage extension
 --

 Key: MYFACES-2235
 URL: https://issues.apache.org/jira/browse/MYFACES-2235
 Project: MyFaces Core
  Issue Type: Improvement
  Components: JSR-314
Affects Versions: 2.0.0-alpha
Reporter: Matthias Weßendorf
Assignee: Matthias Weßendorf
 Fix For: 2.0.0-alpha

 Attachments: myfaces2235.diff


 currently jsf's standard ProjectStage is a bit poor, it does not provide 
 support for
 system props... In order to make that happen we (myfaces) could provide
 an extension for that...
 Wo that we could support something like:
 projectStage = System.getProperty(org.apache.myfaces.PROJECT_STAGE)
 Ordering would be:
 -jndi
 -web.xml
 -sys-props
 the current order is JNDI, followed by web.xml

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



Re: [source control] git and the ASF ...

2009-05-15 Thread Matthias Wessendorf
some more infos:

http://wiki.apache.org/general/GitAtApache

On Fri, May 15, 2009 at 11:39 AM, Matthias Wessendorf mat...@apache.org wrote:
 On Fri, May 15, 2009 at 11:37 AM, Werner Punz werner.p...@gmail.com wrote:
 Matthias Wessendorf schrieb:
 core

 Ok, I filed this:
 https://issues.apache.org/jira/browse/INFRA-2053

 maybe we should also think about making the JSF 1.1.x stuff a branch ...
 (since we already work on 2.0.x)

 +1

 1.1.x branch
 1.2 trunk
 2.0 branch

 hehe :-) just wrote a similar email :-)

 -Matthias


 instead of

 1.1 trunk
 1.2 trunk_1.2
 2.0 branch

 this also helps the infrastructure people!








 --
 Matthias Wessendorf

 blog: http://matthiaswessendorf.wordpress.com/
 sessions: http://www.slideshare.net/mwessendorf
 twitter: http://twitter.com/mwessendorf




-- 
Matthias Wessendorf

blog: http://matthiaswessendorf.wordpress.com/
sessions: http://www.slideshare.net/mwessendorf
twitter: http://twitter.com/mwessendorf


[jira] Created: (TRINIDAD-1474) Add Window abstraction to Trinidad

2009-05-15 Thread Blake Sullivan (JIRA)
Add Window abstraction to Trinidad
--

 Key: TRINIDAD-1474
 URL: https://issues.apache.org/jira/browse/TRINIDAD-1474
 Project: MyFaces Trinidad
  Issue Type: New Feature
  Components: Archetype
Affects Versions:  1.2.12-core
 Environment: All
Reporter: Blake Sullivan


Add Window abstraction to Trinidad.  Currently, Trinidad knows nothing of the 
separate browser Windows that make up a browser session.  This causes weird 
problems.  For example, the state management token cache is shared across all 
of the active windows with a simple LRU.  If the user opens up two windows and 
operates on one window long enough, he will cause the token state for the 
original window to be purged.  When the user switches back to the original 
window and POSTs back, the token won't be found, Trinidad will assume that this 
is because the session expired, and the user will be given an error.

Adding the concept of a Window and a Window lifecyle opens up the following 
capabilities:
1) Correct handling of per-window UI state by segregating tokens by window
2) Early clean-up of UI state by aggressively purging state for closed windows
3) Applications can manager per-window state by listening for window lifecycle 
events
4) Sessions can be cleaned up earlier by terminating the session when the last 
window in the session is closed
5) A window scope can be implemented to ease using per-window state with EL
6) A window manager implementation can hide the details of handling control-N 
in the browser

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



[TRINIDAD][API] JIRA-1474 Add Window abstraction to Trinidad

2009-05-15 Thread Blake Sullivan

Here is the proposed api:

package org.apache.myfaces.trinidad.context;


/**
* Represents a Window in the current user's Session.  Windows are 
created and vended

* by the Session's WindowManager and the Window for the current request is
* available from codeWindowManager.getCurrentWindow/code
* @see WindowManager#getCurrentWindow
*/
public abstract class Window implements Serializable
{
 /**
  * p
  * Represents the current state of the Window.  Windows start out 
codeOPEN/code,
  * when the current window's document is being unloaded, they move to 
the codeUNLOADING/code
  * state and then either move back to the codeOPEN/code state if 
the Window's content
  * is populated with a new document from the same application, or to 
the codeCLOSED/code

  * state if it is not.
  * /pp
  * This represents the framework's best guess at the current status of 
the Window.

  * /p
  */
 public enum LifecycleState
 {
   /** The Window is currently open */
   OPEN,

   /** The Window is being unloaded */
   UNLOADING,

   /** The Window is believed to be closed, either because the window 
was explicitly closed

*  or because the window is suspected to have been closed
*/
   CLOSED
 }

 /**
  * Represents how the window is used in the application
  */
 public enum Usage
 {
   /** Used as a top-level application window */
   FRAME,

   /** Used as a dialog */
   DIALOG
 }

 /**
  * @return The unique identifier for this Window within the Session
  */
 public abstract String getId();

 /**
  * @return The current state of the Window
  */
 public abstract LifecycleState getLifecycleState();

 /**
  * Returns the Usage of the Window--either a top-level frame or a dialog
  * @return how the window is used
  */
 public abstract Usage getUsage();
}

/**
* p
* Manages the set of Windows currently in the Session and allows 
listeners on the Windows'

* lifecycles to be registered.
* /p
* @see org.apache.myfaces.trinidad.context.RequestContext#getWindowManager
*/
abstract public class WindowManager
{
 /**
  * @param extContext ExternalContext so that the WindowManager may be 
called before the

  * FacesContext is available
  * @return The Window that contains the document making the current 
request

  */
 public abstract Window getCurrentWindow(ExternalContext extContext);

 /**
  * @param extContext ExternalContext so that the WindowManager may be 
called before the

  * FacesContext is available
  * @return codetrue/code if the Window making the current request 
is newly created.

  */
 public abstract boolean isCurrentWindowNew(ExternalContext extContext);

 /**
  * @param extContext ExternalContext so that the WindowManager may be 
called before the

  * FacesContext is available
  * @return The Unmodifiable Map of WindowIds to Windows
  */
 public abstract MapString, ? extends Window 
getWindows(ExternalContext extContext);


 /**
  * p
  * Registers a listener that will be informed of changes to the 
Lifecylce state of any of

  * the known Windows.
  * /p
  * p
  * Window listeners may be registered automatically by adding a file
  * containing the names of the classes implementing the WindowListener 
in a file named

  * codeorg.apache.myfaces.trinidad.event.WindowListener/code inside of
  * the codeMETA_INF/services/code directory.
  * /p
  * @param extContext ExternalContext so that the WindowManager may be 
called before the

  * FacesContext is available
  * @param windowListener
  */
 public abstract void addWindowListener(ExternalContext extContext, 
WindowListener windowListener);


 /**
  * Removes a listener that will be informed of changes to the 
Lifecylce state of any of

  * the known Windows
  * @param extContext ExternalContext so that the WindowManager may be 
called before the

  * FacesContext is available
  * @param windowListener
  */
 public abstract void removeWindowListener(ExternalContext extContext, 
WindowListener windowListener);


 /**
  * Performs any necessary action to embed the current window 
identifier into the output

  * @param context FacesContext to use to write the output
  * @throws IOException if an output exception occurs
  */
 public abstract void writeState(FacesContext context) throws IOException;
}

/**
* p
* Application-scoped factory for creating per-Session WindowManager 
instances.  It is the
* WindowManagerFactory implementation's responsibility to ensure that 
only one
* WindowManager instance is created per-session.  The 
WindowManagerFactory is also responsible
* for ensuring that any mutable state in the WindowManager instances 
will be successfully failed

* over.
* /p
* p
* The factory is usually specified by placing the name of the 
WindowManagerFactory

* implementation class in a file named
* codeorg.apache.myfaces.trinidad.context.WindowManagerFactory/code
* in the codeMETA-INF/services/code directory
* /p
* @see org.apache.myfaces.trinidad.context.WindowManager
* @see org.apache.myfaces.trinidad.context.RequestContext#getWindowManager
*/

Re: [TRINIDAD][API] JIRA-1474 Add Window abstraction to Trinidad

2009-05-15 Thread Simon Lessard
Hi Blake,

I'm + 1 with the idea and the general API, but I have some concerns:

   1. I don't really like the API to expose a read only map through
   WindowManager.getWindows, I would prefer
   WindowManager.getWindowIds(ExternalContext) and
   WindowManager.getWindow(ExternalContext, String);
   2. WindowListener should be an interface extending EventListener one of
   its subclasses;
   3. Either WindowListener or WindowLifecycleEvent is wrongly named from a
   JSF point of view (althoguh it could be potentially correctly named in
   Swing). All JSF Listener handle events with the exact same name as the
   listener, but with Listener changed to Event, so it should either be
   WindowLifecycleListener or WindowEvent for the API to be coherent with the
   usual JSF nomenclature.
   4. WindowListener method is not properly named. Pretty much as above, in
   JSF all listener methods are called processevenType so it should either be
   public void processWindowEvent or processWindowLifecycleEventdepending on
   the resolution of the previous point;
   5. The process method parameters do not match the usual listener
   convention to receive a single event object. Would it be possible to place
   the ExternalContext instance in the event?
   6. I would prefer to see WindowManager.isCurrentWindowNew as
   Window.isNew, it's more OOP correct;
   7. Actually I would prefer the same for the add/get/removeWindowListener


Regards,

~ Simon


On Fri, May 15, 2009 at 3:09 PM, Blake Sullivan
blake.sulli...@oracle.comwrote:

 Here is the proposed api:

 package org.apache.myfaces.trinidad.context;


 /**
 * Represents a Window in the current user's Session.  Windows are created
 and vended
 * by the Session's WindowManager and the Window for the current request is
 * available from codeWindowManager.getCurrentWindow/code
 * @see WindowManager#getCurrentWindow
 */
 public abstract class Window implements Serializable
 {
  /**
  * p
  * Represents the current state of the Window.  Windows start out
 codeOPEN/code,
  * when the current window's document is being unloaded, they move to the
 codeUNLOADING/code
  * state and then either move back to the codeOPEN/code state if the
 Window's content
  * is populated with a new document from the same application, or to the
 codeCLOSED/code
  * state if it is not.
  * /pp
  * This represents the framework's best guess at the current status of the
 Window.
  * /p
  */
  public enum LifecycleState
  {
   /** The Window is currently open */
   OPEN,

   /** The Window is being unloaded */
   UNLOADING,

   /** The Window is believed to be closed, either because the window was
 explicitly closed
*  or because the window is suspected to have been closed
*/
   CLOSED
  }

  /**
  * Represents how the window is used in the application
  */
  public enum Usage
  {
   /** Used as a top-level application window */
   FRAME,

   /** Used as a dialog */
   DIALOG
  }

  /**
  * @return The unique identifier for this Window within the Session
  */
  public abstract String getId();

  /**
  * @return The current state of the Window
  */
  public abstract LifecycleState getLifecycleState();

  /**
  * Returns the Usage of the Window--either a top-level frame or a dialog
  * @return how the window is used
  */
  public abstract Usage getUsage();
 }

 /**
 * p
 * Manages the set of Windows currently in the Session and allows listeners
 on the Windows'
 * lifecycles to be registered.
 * /p
 * @see org.apache.myfaces.trinidad.context.RequestContext#getWindowManager
 */
 abstract public class WindowManager
 {
  /**
  * @param extContext ExternalContext so that the WindowManager may be
 called before the
  * FacesContext is available
  * @return The Window that contains the document making the current request
  */
  public abstract Window getCurrentWindow(ExternalContext extContext);

  /**
  * @param extContext ExternalContext so that the WindowManager may be
 called before the
  * FacesContext is available
  * @return codetrue/code if the Window making the current request is
 newly created.
  */
  public abstract boolean isCurrentWindowNew(ExternalContext extContext);

  /**
  * @param extContext ExternalContext so that the WindowManager may be
 called before the
  * FacesContext is available
  * @return The Unmodifiable Map of WindowIds to Windows
  */
  public abstract MapString, ? extends Window getWindows(ExternalContext
 extContext);

  /**
  * p
  * Registers a listener that will be informed of changes to the Lifecylce
 state of any of
  * the known Windows.
  * /p
  * p
  * Window listeners may be registered automatically by adding a file
  * containing the names of the classes implementing the WindowListener in a
 file named
  * codeorg.apache.myfaces.trinidad.event.WindowListener/code inside of
  * the codeMETA_INF/services/code directory.
  * /p
  * @param extContext ExternalContext so that the WindowManager may be
 called before the
  * FacesContext is available
  * @param 

Re: Mojarra and us...

2009-05-15 Thread Ganesh

Hi,

At least for the AJAX part I can tell that many details are treated as 
implementation details, so the spec purposely leaves them open. On some 
details in the jsdocs Roger has even relaxed the wording of the spec to 
leave the details to the impl. If we muddle through the specs and do it 
our way the MyFaces AJAX and the Mojarra AJAX won't have compatible XML 
interfaces (syntactically, yes, but not sematically). This would be bad 
in two ways:
1. The way things have been going until now the spec will further evolve 
to match the behaviour of Mojarra. They have all right to try out new 
features in their impl before writing them into the spec, but it seems 
wise to stay close.
2. If the MyFaces Javascript doesn't work with the Mojarra server, the 
t:ajax tag (I'm working on it ...) wouldn't run with Mojarra.


Here is how I've been treating this: By testing with Mojarra I've 
checked their implementation's behaviour if I wasn't sure how to 
interpret the specs. Just running it and checking a test apps behaviour 
as well as the transferred XML stream for serveral corner cases 
definitely doesn't break any license. I don't think reading their code 
is a helpful idea - we'd just repeat the same errors they have made and 
aren't we convinced to know it better? ;-)


Best regards,
Ganesh

Matthias Wessendorf schrieb:

isn't the behavior *clear* defined in the spec ?
If so, go the route;
If not, ask the EG on the why ;-)

-Matthias
  


Re: [Fwd: Re: f:ajax not working inside composite components?]

2009-05-15 Thread Werner Punz
From a logical standpoint you cannot avoid to send the entire abslute 
(html) id

because otherwise on the server side you cannot
identify the component properly.
If you take the relative id, a proper identification within the 
component tree is impossible.


So the id sent down has to be the absolute id otherwise we do not have a 
chance of identifying the affected components properly!



Werner



Ganesh schrieb:

Hi everybody who is involved with MyFaces 2.0,

have you seen this?

 From this:


h:selectOneMenu id=menu
value=#{place.zoomIndex}
valueChangeListener=#{place.zoomChanged}
style=font-size:13px;font-family:Palatino

f:selectItems value=#{places.zoomLevelItems}/
*f:ajax execute=@this render=image/
*
/h:selectOneMenu
,nested inside a ui:repeat and a composition, Mojarra creates this AJAX 
request:


form form
j_id-939329235_16ef8569:0:j_id-939329235_16ef8513:j_id1608935764_5fe6690f:menu 
3

javax.faces.ViewState -1363564553004911965:-1863826268811277742
javax.faces.behavior.event valueChange
javax.faces.partial.ajax true
javax.faces.partial.event change
javax.faces.partial.execute 
j_id-939329235_16ef8569:0:j_id-939329235_16ef8513:j_id1608935764_5fe6690f:menu 

javax.faces.partial.render 
j_id-939329235_16ef8569:0:j_id-939329235_16ef8513:j_id1608935764_5fe6690f:image 

javax.faces.source 
j_id-939329235_16ef8569:0:j_id-939329235_16ef8513:j_id1608935764_5fe6690f:menu 



In the JSR-314 spec it says in table 14-1:

 render - A space delimited list of client identifiers or one of the 
keywords (Section 14.2.2 “Keywords”). These reference the components 
that will be processed during the “render” phase of the request 
processing lifecycle.


now, 'image' is definitely not a client identifier, but a component 
identifier. And there is more! Andy Schwarz comments on this:


 When specifying execute/render ids for f:ajax, the id resolution 
behavior is similar to findComponent(). So, if you specify a relative 
id, eg. image, this should be resolved relative to the nearest naming 
container. In your case, that would be the composite component. In order 
to specify an absolute id, you would prefix the id with :, eg. 
:foo:mycompositecomp:image.


Both kinds of behaviour - resolving ids either relative to the nearest 
naming container or prepending them with a : to mark them absolute - 
cannot be found in the spec.


So, what do we do? Shall we follow Mojarras paths even if not covered by 
the specs words? Or do purposely break application portability to adhere 
to the specs?


Please comment on this.

Best regards,
Ganesh

P.S.: For the curious ones: The reason why Davids code doesn't work 
because there is some bug in the decode processing of ui:repeat that 
Ryan is currently fixing ...


 Original-Nachricht 
Betreff: Re: f:ajax not working inside composite components?
Datum: Tue, 12 May 2009 14:39:58 -0700
Von: Ryan Lubke ryan.lu...@sun.com
Antwort an: JSR 314 Open Mailing list jsr-314-o...@jcp.org
An: jsr-314-o...@jcp.org
Referenzen: 
75fa9e650905120936p114faae7g987969d2e0b7c...@mail.gmail.com 
4a09adcc.8040...@oracle.com 
75fa9e650905121417h7e0b4758obbd3de65a428c...@mail.gmail.com




On 5/12/09 2:17 PM, David Geary wrote:
2009/5/12 Andy Schwartz andy.schwa...@oracle.com 
mailto:andy.schwa...@oracle.com


Hi David -


Hi Andy,

Thanks for responding.

David Geary wrote On 5/12/2009 12:36 PM ET:

h:selectOneMenu id=menu
value=#{place.zoomIndex}
valueChangeListener=#{place.zoomChanged}
style=font-size:13px;font-family:Palatino

f:selectItems value=#{places.zoomLevelItems}/
*f:ajax execute=@this render=image/
*
/h:selectOneMenu


This looks good to me.


Yup. I thought that perhaps I was failing validation for some reason, 
so I added immediate=true to the f:ajax tag, but it didn't fix the 
problem. :(


With FireBug, I've verified that a POST request is indeed executed 
when I change the zoom level, and it appears that everything is in 
order:


form form
j_id-939329235_16ef8569:0:j_id-939329235_16ef8513:j_id1608935764_5fe6690f:menu 
3

javax.faces.ViewState -1363564553004911965:-1863826268811277742
javax.faces.behavior.event valueChange
javax.faces.partial.ajax true
javax.faces.partial.event change
javax.faces.partial.execute 
j_id-939329235_16ef8569:0:j_id-939329235_16ef8513:j_id1608935764_5fe6690f:menu 

javax.faces.partial.render 
j_id-939329235_16ef8569:0:j_id-939329235_16ef8513:j_id1608935764_5fe6690f:image 

javax.faces.source 
j_id-939329235_16ef8569:0:j_id-939329235_16ef8513:j_id1608935764_5fe6690f:menu 



And the request payload looks right - seems like all of the
necessary information is present. (Though, man, those
auto-generated client ids sure are huge!)


Yes, it looks right to me too.

I get a response back that looks like this:

?xml version=1.0 encoding=utf-8?
partial-responsechangesupdate 
id=javax.faces.ViewState![CDATA[1747337848471748955:2683565346534242854 



Re: [Fwd: Re: f:ajax not working inside composite components?]

2009-05-15 Thread Alexander Bell
Hi Werner,

of course you have to send the absolute id.
But in the json attributes execute and render we should use the JSF id's
(so not the html id of the element).

Alex

2009/5/15 Werner Punz werner.p...@gmail.com

 From a logical standpoint you cannot avoid to send the entire abslute
 (html) id
 because otherwise on the server side you cannot
 identify the component properly.
 If you take the relative id, a proper identification within the component
 tree is impossible.

 So the id sent down has to be the absolute id otherwise we do not have a
 chance of identifying the affected components properly!


 Werner



 Ganesh schrieb:

  Hi everybody who is involved with MyFaces 2.0,

 have you seen this?

  From this:

  h:selectOneMenu id=menu
 value=#{place.zoomIndex}
 valueChangeListener=#{place.zoomChanged}
 style=font-size:13px;font-family:Palatino

 f:selectItems value=#{places.zoomLevelItems}/
 *f:ajax execute=@this render=image/
 *
 /h:selectOneMenu

 ,nested inside a ui:repeat and a composition, Mojarra creates this AJAX
 request:

 form form
 j_id-939329235_16ef8569:0:j_id-939329235_16ef8513:j_id1608935764_5fe6690f:menu
 3
 javax.faces.ViewState -1363564553004911965:-1863826268811277742
 javax.faces.behavior.event valueChange
 javax.faces.partial.ajax true
 javax.faces.partial.event change
 javax.faces.partial.execute
 j_id-939329235_16ef8569:0:j_id-939329235_16ef8513:j_id1608935764_5fe6690f:menu

 javax.faces.partial.render
 j_id-939329235_16ef8569:0:j_id-939329235_16ef8513:j_id1608935764_5fe6690f:image

 javax.faces.source
 j_id-939329235_16ef8569:0:j_id-939329235_16ef8513:j_id1608935764_5fe6690f:menu


 In the JSR-314 spec it says in table 14-1:

  render - A space delimited list of client identifiers or one of the
 keywords (Section 14.2.2 “Keywords”). These reference the components that
 will be processed during the “render” phase of the request processing
 lifecycle.

 now, 'image' is definitely not a client identifier, but a component
 identifier. And there is more! Andy Schwarz comments on this:

  When specifying execute/render ids for f:ajax, the id resolution
 behavior is similar to findComponent(). So, if you specify a relative id,
 eg. image, this should be resolved relative to the nearest naming
 container. In your case, that would be the composite component. In order to
 specify an absolute id, you would prefix the id with :, eg.
 :foo:mycompositecomp:image.

 Both kinds of behaviour - resolving ids either relative to the nearest
 naming container or prepending them with a : to mark them absolute -
 cannot be found in the spec.

 So, what do we do? Shall we follow Mojarras paths even if not covered by
 the specs words? Or do purposely break application portability to adhere to
 the specs?

 Please comment on this.

 Best regards,
 Ganesh

 P.S.: For the curious ones: The reason why Davids code doesn't work
 because there is some bug in the decode processing of ui:repeat that Ryan is
 currently fixing ...

  Original-Nachricht 
 Betreff: Re: f:ajax not working inside composite components?
 Datum: Tue, 12 May 2009 14:39:58 -0700
 Von: Ryan Lubke ryan.lu...@sun.com
 Antwort an: JSR 314 Open Mailing list jsr-314-o...@jcp.org
 An: jsr-314-o...@jcp.org
 Referenzen: 75fa9e650905120936p114faae7g987969d2e0b7c...@mail.gmail.com
 4a09adcc.8040...@oracle.com 
 75fa9e650905121417h7e0b4758obbd3de65a428c...@mail.gmail.com



 On 5/12/09 2:17 PM, David Geary wrote:

 2009/5/12 Andy Schwartz andy.schwa...@oracle.com mailto:
 andy.schwa...@oracle.com

Hi David -


 Hi Andy,

 Thanks for responding.

David Geary wrote On 5/12/2009 12:36 PM ET:

h:selectOneMenu id=menu
value=#{place.zoomIndex}
valueChangeListener=#{place.zoomChanged}
style=font-size:13px;font-family:Palatino

f:selectItems value=#{places.zoomLevelItems}/
*f:ajax execute=@this render=image/
*
/h:selectOneMenu


This looks good to me.


 Yup. I thought that perhaps I was failing validation for some reason, so
 I added immediate=true to the f:ajax tag, but it didn't fix the problem.
 :(

  With FireBug, I've verified that a POST request is indeed executed when
 I change the zoom level, and it appears that everything is in order:

 form form
 j_id-939329235_16ef8569:0:j_id-939329235_16ef8513:j_id1608935764_5fe6690f:menu
 3
 javax.faces.ViewState -1363564553004911965:-1863826268811277742
 javax.faces.behavior.event valueChange
 javax.faces.partial.ajax true
 javax.faces.partial.event change
 javax.faces.partial.execute
 j_id-939329235_16ef8569:0:j_id-939329235_16ef8513:j_id1608935764_5fe6690f:menu

 javax.faces.partial.render
 j_id-939329235_16ef8569:0:j_id-939329235_16ef8513:j_id1608935764_5fe6690f:image

 javax.faces.source
 j_id-939329235_16ef8569:0:j_id-939329235_16ef8513:j_id1608935764_5fe6690f:menu



And the request payload looks right - seems like all of the
necessary information is present. (Though, man, those
auto-generated client ids sure 

Re: [source control] git and the ASF ...

2009-05-15 Thread Andrew Robinson
I would say -1. Seems pointless to use another version control client
that is not 100% compatible with SVN when the SVN command-line and UI
clients works fine. What next, a mercurial read-only repository too?
We have chosen to use subversion with MyFaces at Apache, I don't see
any reason to support other clients just to appease some peoples
technology fix. But this is just my opinion.

Note that there are tools out there to do this type of support from
the client, not the server. For example,
http://www.selenic.com/mercurial/wiki/WorkingWithSubversion details
how to use Mercurial as an SVN client and even be able to commit to
SVN! In my opinion, if someone wants to use git, then they should find
a similar tool for git and not burden the folks at Apache.

-Andrew

FYI:
http://www.russellbeattie.com/blog/distributed-revision-control-systems-git-vs-mercurial-vs-svn
http://texagon.blogspot.com/2008/02/use-mercurial-you-git.html
http://weblog.masukomi.org/2008/02/07/a-rebuttal-to-use-mercurial-you-git

On Fri, May 15, 2009 at 10:45 AM, Matthias Wessendorf mat...@apache.org wrote:
 some more infos:

 http://wiki.apache.org/general/GitAtApache

 On Fri, May 15, 2009 at 11:39 AM, Matthias Wessendorf mat...@apache.org 
 wrote:
 On Fri, May 15, 2009 at 11:37 AM, Werner Punz werner.p...@gmail.com wrote:
 Matthias Wessendorf schrieb:
 core

 Ok, I filed this:
 https://issues.apache.org/jira/browse/INFRA-2053

 maybe we should also think about making the JSF 1.1.x stuff a branch ...
 (since we already work on 2.0.x)

 +1

 1.1.x branch
 1.2 trunk
 2.0 branch

 hehe :-) just wrote a similar email :-)

 -Matthias


 instead of

 1.1 trunk
 1.2 trunk_1.2
 2.0 branch

 this also helps the infrastructure people!








 --
 Matthias Wessendorf

 blog: http://matthiaswessendorf.wordpress.com/
 sessions: http://www.slideshare.net/mwessendorf
 twitter: http://twitter.com/mwessendorf




 --
 Matthias Wessendorf

 blog: http://matthiaswessendorf.wordpress.com/
 sessions: http://www.slideshare.net/mwessendorf
 twitter: http://twitter.com/mwessendorf



Re: [source control] git and the ASF ...

2009-05-15 Thread Mike Kienenberger
I don't know much about git, but I know that other committers on
Apache Cayenne use git to commit to the Cayenne svn, so it's certainly
possible to do what Andrew suggests.   From my limited git
understanding, that's the typical practice of using git -- as a
front-end to svn or cvs.

On Fri, May 15, 2009 at 4:08 PM, Andrew Robinson
andrew.rw.robin...@gmail.com wrote:
 I would say -1. Seems pointless to use another version control client
 that is not 100% compatible with SVN when the SVN command-line and UI
 clients works fine. What next, a mercurial read-only repository too?
 We have chosen to use subversion with MyFaces at Apache, I don't see
 any reason to support other clients just to appease some peoples
 technology fix. But this is just my opinion.

 Note that there are tools out there to do this type of support from
 the client, not the server. For example,
 http://www.selenic.com/mercurial/wiki/WorkingWithSubversion details
 how to use Mercurial as an SVN client and even be able to commit to
 SVN! In my opinion, if someone wants to use git, then they should find
 a similar tool for git and not burden the folks at Apache.

 -Andrew

 FYI:
 http://www.russellbeattie.com/blog/distributed-revision-control-systems-git-vs-mercurial-vs-svn
 http://texagon.blogspot.com/2008/02/use-mercurial-you-git.html
 http://weblog.masukomi.org/2008/02/07/a-rebuttal-to-use-mercurial-you-git

 On Fri, May 15, 2009 at 10:45 AM, Matthias Wessendorf mat...@apache.org 
 wrote:
 some more infos:

 http://wiki.apache.org/general/GitAtApache

 On Fri, May 15, 2009 at 11:39 AM, Matthias Wessendorf mat...@apache.org 
 wrote:
 On Fri, May 15, 2009 at 11:37 AM, Werner Punz werner.p...@gmail.com wrote:
 Matthias Wessendorf schrieb:
 core

 Ok, I filed this:
 https://issues.apache.org/jira/browse/INFRA-2053

 maybe we should also think about making the JSF 1.1.x stuff a branch ...
 (since we already work on 2.0.x)

 +1

 1.1.x branch
 1.2 trunk
 2.0 branch

 hehe :-) just wrote a similar email :-)

 -Matthias


 instead of

 1.1 trunk
 1.2 trunk_1.2
 2.0 branch

 this also helps the infrastructure people!








 --
 Matthias Wessendorf

 blog: http://matthiaswessendorf.wordpress.com/
 sessions: http://www.slideshare.net/mwessendorf
 twitter: http://twitter.com/mwessendorf




 --
 Matthias Wessendorf

 blog: http://matthiaswessendorf.wordpress.com/
 sessions: http://www.slideshare.net/mwessendorf
 twitter: http://twitter.com/mwessendorf




Re: [source control] git and the ASF ...

2009-05-15 Thread Matthias Wessendorf

Hey andrew,

Thanks for your mail. There is a discussion on the members list. Let  
me point them to our thread.


Thanks again!

Sent from my iPod.

On 15.05.2009, at 22:08, Andrew Robinson  
andrew.rw.robin...@gmail.com wrote:



I would say -1. Seems pointless to use another version control client
that is not 100% compatible with SVN when the SVN command-line and UI
clients works fine. What next, a mercurial read-only repository too?
We have chosen to use subversion with MyFaces at Apache, I don't see
any reason to support other clients just to appease some peoples
technology fix. But this is just my opinion.

Note that there are tools out there to do this type of support from
the client, not the server. For example,
http://www.selenic.com/mercurial/wiki/WorkingWithSubversion details
how to use Mercurial as an SVN client and even be able to commit to
SVN! In my opinion, if someone wants to use git, then they should find
a similar tool for git and not burden the folks at Apache.

-Andrew

FYI:
http://www.russellbeattie.com/blog/distributed-revision-control-systems-git-vs-mercurial-vs-svn
http://texagon.blogspot.com/2008/02/use-mercurial-you-git.html
http://weblog.masukomi.org/2008/02/07/a-rebuttal-to-use-mercurial-you-git

On Fri, May 15, 2009 at 10:45 AM, Matthias Wessendorf mat...@apache.org 
 wrote:

some more infos:

http://wiki.apache.org/general/GitAtApache

On Fri, May 15, 2009 at 11:39 AM, Matthias Wessendorf mat...@apache.org 
 wrote:
On Fri, May 15, 2009 at 11:37 AM, Werner Punz  
werner.p...@gmail.com wrote:

Matthias Wessendorf schrieb:
core


Ok, I filed this:
https://issues.apache.org/jira/browse/INFRA-2053

maybe we should also think about making the JSF 1.1.x stuff a  
branch ...

(since we already work on 2.0.x)


+1

1.1.x branch
1.2 trunk
2.0 branch


hehe :-) just wrote a similar email :-)

-Matthias



instead of

1.1 trunk
1.2 trunk_1.2
2.0 branch

this also helps the infrastructure people!









--
Matthias Wessendorf

blog: http://matthiaswessendorf.wordpress.com/
sessions: http://www.slideshare.net/mwessendorf
twitter: http://twitter.com/mwessendorf





--
Matthias Wessendorf

blog: http://matthiaswessendorf.wordpress.com/
sessions: http://www.slideshare.net/mwessendorf
twitter: http://twitter.com/mwessendorf



[jira] Updated: (MYFACES-1982) Too many open files on Weblogic 9.2

2009-05-15 Thread Leonardo Uribe (JIRA)

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

Leonardo Uribe updated MYFACES-1982:


Status: Patch Available  (was: Open)

 Too many open files on Weblogic 9.2
 ---

 Key: MYFACES-1982
 URL: https://issues.apache.org/jira/browse/MYFACES-1982
 Project: MyFaces Core
  Issue Type: Bug
  Components: General
Affects Versions: 1.2.3
 Environment: Linux Red Hat AS4 (2.6.9-34.ELsmp), JRockit 1.5.0_14, 
 Weblogic 9.2 MP2
Reporter: Roland Schaer
Priority: Critical

 Due to the default value of the parameter CONFIG_REFRESH_PERIOD, each request 
 causes to reload the web.xml and potential faces config files defined in the 
 web.xml. These loaded files were not freed up and led to open file handles 
 (which are limited to 1024 by default) on the system. After a while the open 
 file handles prevents the system from creating new SocketConnections. 

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



Re: [TRINIDAD][API] JIRA-1474 Add Window abstraction to Trinidad

2009-05-15 Thread Matthias Wessendorf



Sent from my iPod.

On 15.05.2009, at 21:35, Simon Lessard simon.lessar...@gmail.com  
wrote:



Hi Blake,

I'm + 1 with the idea and the general


+1 good idea!


API, but I have some concerns:
I don't really like the API to expose a read only map through  
WindowManager.getWindows, I would prefer  
WindowManager.getWindowIds(ExternalContext) and  
WindowManager.getWindow(E


I like these two methods


xternalContext, String);
WindowListener should be an interface extending EventListener one of  
its subclasses;
Either WindowListener or WindowLifecycleEvent is wrongly named from  
a JSF point of view (althoguh it could be potentially correctly  
named in Swing). All JSF Listener handle events with the exact same  
name as the listener, but with Listener changed to Event, so it  
should either be WindowLifecycleListener or WindowEvent for the API  
to be coherent with the usual JSF nomenclature.
WindowListener method is not properly named. Pretty much as above,  
in JSF all listener methods are called processevenType so it  
should either be public void processWindowEvent or  
processWindowLifecycleEventdepending on the resolution of the  
previous point;
The process method parameters do not match the usual listener  
convention to receive a single event object. Would it be possible to  
place the ExternalContext instance in the event?
I would prefer to see WindowManager.isCurrentWindowNew as  
Window.isNew, it's more OOP correct;

I agree

-M



Actually I would prefer the same for the add/get/removeWindowListener

Regards,

~ Simon


On Fri, May 15, 2009 at 3:09 PM, Blake Sullivan blake.sulli...@oracle.com 
 wrote:

Here is the proposed api:

package org.apache.myfaces.trinidad.context;


/**
* Represents a Window in the current user's Session.  Windows are  
created and vended
* by the Session's WindowManager and the Window for the current  
request is

* available from codeWindowManager.getCurrentWindow/code
* @see WindowManager#getCurrentWindow
*/
public abstract class Window implements Serializable
{
 /**
 * p
 * Represents the current state of the Window.  Windows start out  
codeOPEN/code,
 * when the current window's document is being unloaded, they move  
to the codeUNLOADING/code
 * state and then either move back to the codeOPEN/code state if  
the Window's content
 * is populated with a new document from the same application, or to  
the codeCLOSED/code

 * state if it is not.
 * /pp
 * This represents the framework's best guess at the current status  
of the Window.

 * /p
 */
 public enum LifecycleState
 {
  /** The Window is currently open */
  OPEN,

  /** The Window is being unloaded */
  UNLOADING,

  /** The Window is believed to be closed, either because the window  
was explicitly closed

   *  or because the window is suspected to have been closed
   */
  CLOSED
 }

 /**
 * Represents how the window is used in the application
 */
 public enum Usage
 {
  /** Used as a top-level application window */
  FRAME,

  /** Used as a dialog */
  DIALOG
 }

 /**
 * @return The unique identifier for this Window within the Session
 */
 public abstract String getId();

 /**
 * @return The current state of the Window
 */
 public abstract LifecycleState getLifecycleState();

 /**
 * Returns the Usage of the Window--either a top-level frame or a  
dialog

 * @return how the window is used
 */
 public abstract Usage getUsage();
}

/**
* p
* Manages the set of Windows currently in the Session and allows  
listeners on the Windows'

* lifecycles to be registered.
* /p
* @see  
org.apache.myfaces.trinidad.context.RequestContext#getWindowManager

*/
abstract public class WindowManager
{
 /**
 * @param extContext ExternalContext so that the WindowManager may  
be called before the

 * FacesContext is available
 * @return The Window that contains the document making the current  
request

 */
 public abstract Window getCurrentWindow(ExternalContext extContext);

 /**
 * @param extContext ExternalContext so that the WindowManager may  
be called before the

 * FacesContext is available
 * @return codetrue/code if the Window making the current  
request is newly created.

 */
 public abstract boolean isCurrentWindowNew(ExternalContext  
extContext);


 /**
 * @param extContext ExternalContext so that the WindowManager may  
be called before the

 * FacesContext is available
 * @return The Unmodifiable Map of WindowIds to Windows
 */
 public abstract MapString, ? extends Window  
getWindows(ExternalContext extContext);


 /**
 * p
 * Registers a listener that will be informed of changes to the  
Lifecylce state of any of

 * the known Windows.
 * /p
 * p
 * Window listeners may be registered automatically by adding a file
 * containing the names of the classes implementing the  
WindowListener in a file named
 * codeorg.apache.myfaces.trinidad.event.WindowListener/code  
inside of

 * the codeMETA_INF/services/code directory.
 * /p
 * @param extContext ExternalContext so that the WindowManager may  
be 

[jira] Commented: (MYFACES-1982) Too many open files on Weblogic 9.2

2009-05-15 Thread Leonardo Uribe (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-1982?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=12709957#action_12709957
 ] 

Leonardo Uribe commented on MYFACES-1982:
-

Committed solution (1.2.7-SNAPSHOT). Since there is no confirmation if the 
changes  this solves the problem, this issue will be let open.

 Too many open files on Weblogic 9.2
 ---

 Key: MYFACES-1982
 URL: https://issues.apache.org/jira/browse/MYFACES-1982
 Project: MyFaces Core
  Issue Type: Bug
  Components: General
Affects Versions: 1.2.3
 Environment: Linux Red Hat AS4 (2.6.9-34.ELsmp), JRockit 1.5.0_14, 
 Weblogic 9.2 MP2
Reporter: Roland Schaer
Priority: Critical

 Due to the default value of the parameter CONFIG_REFRESH_PERIOD, each request 
 causes to reload the web.xml and potential faces config files defined in the 
 web.xml. These loaded files were not freed up and led to open file handles 
 (which are limited to 1024 by default) on the system. After a while the open 
 file handles prevents the system from creating new SocketConnections. 

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



Re: [source control] git and the ASF ...

2009-05-15 Thread Matthias Wessendorf

Anderw, I asked to move the thread to committ...@.

Thx
Matthias

Sent from my iPod.

On 15.05.2009, at 22:21, Matthias Wessendorf mwessend...@gmail.com  
wrote:



Hey andrew,

Thanks for your mail. There is a discussion on the members list. Let  
me point them to our thread.


Thanks again!

Sent from my iPod.

On 15.05.2009, at 22:08, Andrew Robinson  
andrew.rw.robin...@gmail.com wrote:



I would say -1. Seems pointless to use another version control client
that is not 100% compatible with SVN when the SVN command-line and UI
clients works fine. What next, a mercurial read-only repository too?
We have chosen to use subversion with MyFaces at Apache, I don't see
any reason to support other clients just to appease some peoples
technology fix. But this is just my opinion.

Note that there are tools out there to do this type of support from
the client, not the server. For example,
http://www.selenic.com/mercurial/wiki/WorkingWithSubversion details
how to use Mercurial as an SVN client and even be able to commit to
SVN! In my opinion, if someone wants to use git, then they should  
find

a similar tool for git and not burden the folks at Apache.

-Andrew

FYI:
http://www.russellbeattie.com/blog/distributed-revision-control-systems-git-vs-mercurial-vs-svn
http://texagon.blogspot.com/2008/02/use-mercurial-you-git.html
http://weblog.masukomi.org/2008/02/07/a-rebuttal-to-use-mercurial-you-git

On Fri, May 15, 2009 at 10:45 AM, Matthias Wessendorf mat...@apache.org 
 wrote:

some more infos:

http://wiki.apache.org/general/GitAtApache

On Fri, May 15, 2009 at 11:39 AM, Matthias Wessendorf mat...@apache.org 
 wrote:
On Fri, May 15, 2009 at 11:37 AM, Werner Punz werner.p...@gmail.com 
 wrote:

Matthias Wessendorf schrieb:
core


Ok, I filed this:
https://issues.apache.org/jira/browse/INFRA-2053

maybe we should also think about making the JSF 1.1.x stuff a  
branch ...

(since we already work on 2.0.x)


+1

1.1.x branch
1.2 trunk
2.0 branch


hehe :-) just wrote a similar email :-)

-Matthias



instead of

1.1 trunk
1.2 trunk_1.2
2.0 branch

this also helps the infrastructure people!









--
Matthias Wessendorf

blog: http://matthiaswessendorf.wordpress.com/
sessions: http://www.slideshare.net/mwessendorf
twitter: http://twitter.com/mwessendorf





--
Matthias Wessendorf

blog: http://matthiaswessendorf.wordpress.com/
sessions: http://www.slideshare.net/mwessendorf
twitter: http://twitter.com/mwessendorf



jsf.ajax.request parameters vs. f:ajax parameters

2009-05-15 Thread Ganesh

Hi,

The confusion was based on the mixup between javascript parameters and 
tag attributes. It's easy: The tag takes component ids and the 
javascript function takes clientids.


Here's what the spec says on this:

table 10-3, f:ajax's render attribute:
If a literal is specified, it must be a space delimited String of 
component identifiers and/or one of the keywords outlined in Section 
14.2.2 “Keywords”. If not specified, then @none is the default . If a 
ValueExpression is specified, it must refer to a property that returns a 
Collection of Strings. Each String in the Collection must not contain 
spaces.


table 14-1, jsf.ajax.request's render parameter:
A space delimited list of client identifiers or one of the keywords 
(Section 14.2.2 “Keywords”). These reference the components that will be 
processed during the “render” phase of the request processing lifecycle.


Best regards,
Ganesh


[jira] Commented: (MYFACES-2165) concurrent issue in initializing myfaces 1.1.6

2009-05-15 Thread Leonardo Uribe (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2165?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=12709973#action_12709973
 ] 

Leonardo Uribe commented on MYFACES-2165:
-

committed solution on both branches but since there is no confirmation of the 
patch provided solves the problem, this will be let open

 concurrent issue in initializing myfaces 1.1.6
 --

 Key: MYFACES-2165
 URL: https://issues.apache.org/jira/browse/MYFACES-2165
 Project: MyFaces Core
  Issue Type: Bug
Affects Versions: 1.1.6
 Environment: tomcat 6.0.18 java 1.6.0_06
Reporter: xuxiankun
Priority: Critical
 Attachments: MYFACES-2165.patch


 after starting tomcat, we will get a error when i visit a faces page. we can 
 fix this issue by restarting tomcat. so i think it's concurrent issue.
 java.lang.NullPointerException
   at 
 org.apache.myfaces.application.jsp.JspViewHandlerImpl.getServletMapping(JspViewHandlerImpl.java:388)
   at 
 org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspViewHandlerImpl.java:222)
   at 
 org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108)
   at 
 org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:216)
   at 
 org.apache.shale.validator.faces.ValidatorViewHandler.renderView(ValidatorViewHandler.java:130)
   at 
 org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108)
   at 
 org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:216)
   at 
 org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41)
   at 
 org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:146)
   at javax.faces.webapp.FacesServlet.service(FacesServlet.java:147)
   at 
 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
   at 
 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at 
 cn.com.brilliance.begen.webapp.servlet.BeGenFilter.doFilter(BeGenFilter.java:56)
   at 
 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at 
 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:141)
   at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:281)
   at 
 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at 
 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at 
 org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
   at 
 org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
   at 
 org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
   at 
 org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
   at 
 cn.com.brilliance.begen.webapp.servlet.LoginServlet.doPost(LoginServlet.java:91)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
   at 
 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
   at 
 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at 
 org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
   at 
 org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
   at 
 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at 
 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at 
 org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
   at 
 org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
   at 
 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   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 
 

[jira] Updated: (MYFACES-2155) HtmlLinkRenderer did not recognize ankers (#)

2009-05-15 Thread Leonardo Uribe (JIRA)

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

Leonardo Uribe updated MYFACES-2155:


   Resolution: Fixed
Fix Version/s: 1.2.7-SNAPSHOT
   1.1.7-SNAPSHOT
   Status: Resolved  (was: Patch Available)

Solution committed on both shared branches 

Thanks Martin for provide this patch

 HtmlLinkRenderer did not recognize ankers (#)
 -

 Key: MYFACES-2155
 URL: https://issues.apache.org/jira/browse/MYFACES-2155
 Project: MyFaces Core
  Issue Type: Bug
Reporter: Martin Haimberger
Assignee: Martin Haimberger
 Fix For: 1.1.7-SNAPSHOT, 1.2.7-SNAPSHOT

 Attachments: HtmlLinkRenderer.patch


 HtmlLinkRenderer did not recognize ankers (#) and encoded them wrong if there 
 were f:params used (- url#anker?paramname=paramvalue instead of 
 url?paramname=paramvalue#anker)

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



[jira] Commented: (MYFACES-1891) ClassCastException in converter when Hiding / Showing unselected selectOneRadio

2009-05-15 Thread Leonardo Uribe (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-1891?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=12709990#action_12709990
 ] 

Leonardo Uribe commented on MYFACES-1891:
-

The problem described before is a variant of the original exception.

The solution is a little bit different from the proposed on the modified 
RendererUtils file (but the file helps to find what's wrong, thanks Patrick for 
the patch). It is add this code to getConvertedStringValue (look the last 
return):

public static String getConvertedStringValue(FacesContext context,
 UIComponent component, 
Converter converter, Object value) {
if (converter == null) {
if (value == null) {
return ;
}
else if (value instanceof String) {
return (String) value;
} else if (RendererUtils.NOTHING.equals(value)) {
return ;
} else {
throw new IllegalArgumentException(
Value is no String (class= + value.getClass().getName() + 
, value= + value + ) and component 
+ component.getClientId(context) + with path: 
+ getPathToComponent(component)
+  does not have a Converter);
}
}

if (RendererUtils.NOTHING.equals(value))
{
return converter.getAsString(context, component, );
}
else
{
return converter.getAsString(context, component, value);
}
}

If a converter is used and RendererUtils.NOTHING is set, we should call 
converter.getAsString with empty string as value (right now 
RendererUtils.NOTHING is passed, but it must not, because this var is used when 
no selection is set by the user and then pass it as null value).

The fix should be done for both 1.1 and 1.2 branches

 ClassCastException in converter when Hiding / Showing unselected 
 selectOneRadio
 ---

 Key: MYFACES-1891
 URL: https://issues.apache.org/jira/browse/MYFACES-1891
 Project: MyFaces Core
  Issue Type: Bug
Affects Versions: 1.2.3
 Environment: MyFaces 1.2.3, Spring WebFlow 2.0.2, RichFaces 3.2.1, 
 Tomahawk 1.1.6, Facelets 1.1.15.B1, Tomcat 6.0.16
Reporter: Patrick Schmidt
Assignee: Leonardo Uribe
 Fix For: 1.1.6

 Attachments: example.zip, MYFACES-1891-custom-converter.patch, 
 RendererUtils.patch, RendererUtils_1.2.6_patched.java


 See the attached example.
 When the block with the selectOneRadio ist shown, then hidden and then shown 
 again a ClassCastException occurs in the Converter. The selectOneRadio has as 
 submittedValue org.apache.myfaces.shared_impl.renderkit.RendererUtils$1, for 
 which the conversion is done.
 javax.faces.FacesException: Exception while calling encodeEnd on component : 
 {Component-Path : [Class: org.ajax4jsf.component.AjaxViewRoot,ViewId: 
 /WEB-INF/pages/schnellerfassung/dea/dea.xhtml][Class: 
 javax.faces.component.html.HtmlForm,Id: form][Class: 
 org.apache.myfaces.custom.div.Div,Id: hideableBlock][Class: 
 javax.faces.component.html.HtmlSelectOneRadio,Id: selectOneRadio]}
   at 
 javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:610)
   at 
 org.ajax4jsf.renderkit.RendererBase.renderChild(RendererBase.java:286)
   at 
 org.ajax4jsf.renderkit.RendererBase.renderChildren(RendererBase.java:262)
   at 
 org.ajax4jsf.renderkit.RendererBase.renderChild(RendererBase.java:284)
   at 
 org.ajax4jsf.renderkit.RendererBase.renderChildren(RendererBase.java:262)
   at 
 org.ajax4jsf.renderkit.RendererBase.renderChild(RendererBase.java:284)
   at 
 org.ajax4jsf.renderkit.AjaxChildrenRenderer.encodeAjaxComponent(AjaxChildrenRenderer.java:125)
   at 
 org.ajax4jsf.renderkit.AjaxChildrenRenderer.encodeAjaxChildren(AjaxChildrenRenderer.java:68)
   at 
 org.ajax4jsf.renderkit.AjaxChildrenRenderer.encodeAjaxComponent(AjaxChildrenRenderer.java:116)
   at 
 org.ajax4jsf.renderkit.AjaxContainerRenderer.encodeAjax(AjaxContainerRenderer.java:123)
   at org.ajax4jsf.component.AjaxViewRoot.encodeAjax(AjaxViewRoot.java:673)
   at 
 org.ajax4jsf.component.AjaxViewRoot.encodeChildren(AjaxViewRoot.java:544)
   at javax.faces.component.UIComponent.encodeAll(UIComponent.java:239)
   at 
 com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:592)
   at 
 org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108)
   at 
 org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:189)
   at org.springframework.faces.webflow.JsfView.render(JsfView.java:92)
   at 
 

[jira] Resolved: (MYFACES-1891) ClassCastException in converter when Hiding / Showing unselected selectOneRadio

2009-05-15 Thread Leonardo Uribe (JIRA)

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

Leonardo Uribe resolved MYFACES-1891.
-

   Resolution: Fixed
Fix Version/s: (was: 1.1.6)
   1.2.7-SNAPSHOT
   1.1.7-SNAPSHOT

 ClassCastException in converter when Hiding / Showing unselected 
 selectOneRadio
 ---

 Key: MYFACES-1891
 URL: https://issues.apache.org/jira/browse/MYFACES-1891
 Project: MyFaces Core
  Issue Type: Bug
Affects Versions: 1.2.3
 Environment: MyFaces 1.2.3, Spring WebFlow 2.0.2, RichFaces 3.2.1, 
 Tomahawk 1.1.6, Facelets 1.1.15.B1, Tomcat 6.0.16
Reporter: Patrick Schmidt
Assignee: Leonardo Uribe
 Fix For: 1.1.7-SNAPSHOT, 1.2.7-SNAPSHOT

 Attachments: example.zip, MYFACES-1891-custom-converter.patch, 
 RendererUtils.patch, RendererUtils_1.2.6_patched.java


 See the attached example.
 When the block with the selectOneRadio ist shown, then hidden and then shown 
 again a ClassCastException occurs in the Converter. The selectOneRadio has as 
 submittedValue org.apache.myfaces.shared_impl.renderkit.RendererUtils$1, for 
 which the conversion is done.
 javax.faces.FacesException: Exception while calling encodeEnd on component : 
 {Component-Path : [Class: org.ajax4jsf.component.AjaxViewRoot,ViewId: 
 /WEB-INF/pages/schnellerfassung/dea/dea.xhtml][Class: 
 javax.faces.component.html.HtmlForm,Id: form][Class: 
 org.apache.myfaces.custom.div.Div,Id: hideableBlock][Class: 
 javax.faces.component.html.HtmlSelectOneRadio,Id: selectOneRadio]}
   at 
 javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:610)
   at 
 org.ajax4jsf.renderkit.RendererBase.renderChild(RendererBase.java:286)
   at 
 org.ajax4jsf.renderkit.RendererBase.renderChildren(RendererBase.java:262)
   at 
 org.ajax4jsf.renderkit.RendererBase.renderChild(RendererBase.java:284)
   at 
 org.ajax4jsf.renderkit.RendererBase.renderChildren(RendererBase.java:262)
   at 
 org.ajax4jsf.renderkit.RendererBase.renderChild(RendererBase.java:284)
   at 
 org.ajax4jsf.renderkit.AjaxChildrenRenderer.encodeAjaxComponent(AjaxChildrenRenderer.java:125)
   at 
 org.ajax4jsf.renderkit.AjaxChildrenRenderer.encodeAjaxChildren(AjaxChildrenRenderer.java:68)
   at 
 org.ajax4jsf.renderkit.AjaxChildrenRenderer.encodeAjaxComponent(AjaxChildrenRenderer.java:116)
   at 
 org.ajax4jsf.renderkit.AjaxContainerRenderer.encodeAjax(AjaxContainerRenderer.java:123)
   at org.ajax4jsf.component.AjaxViewRoot.encodeAjax(AjaxViewRoot.java:673)
   at 
 org.ajax4jsf.component.AjaxViewRoot.encodeChildren(AjaxViewRoot.java:544)
   at javax.faces.component.UIComponent.encodeAll(UIComponent.java:239)
   at 
 com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:592)
   at 
 org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108)
   at 
 org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:189)
   at org.springframework.faces.webflow.JsfView.render(JsfView.java:92)
   at 
 org.springframework.webflow.engine.ViewState.render(ViewState.java:240)
   at 
 org.springframework.webflow.engine.ViewState.resume(ViewState.java:199)
   at org.springframework.webflow.engine.Flow.resume(Flow.java:535)
   at 
 org.springframework.webflow.engine.impl.FlowExecutionImpl.resume(FlowExecutionImpl.java:261)
   at 
 org.springframework.webflow.executor.FlowExecutorImpl.resumeExecution(FlowExecutorImpl.java:153)
   at 
 org.springframework.webflow.mvc.servlet.FlowHandlerAdapter.handle(FlowHandlerAdapter.java:173)
   at 
 org.springframework.webflow.mvc.servlet.FlowController.handleRequest(FlowController.java:172)
   at 
 org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)
   at 
 org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:875)
   at 
 org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:809)
   at 
 org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
   at 
 org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:511)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
   at 
 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
   at 
 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at 
 com.metzler.ec.web.filter.RendererFilter.doFilter(RendererFilter.java:183)
   at 
 

[jira] Resolved: (MYFACES-2177) ConvertDateTimeTag timeZone does not work with ValueExpression of return type String

2009-05-15 Thread Leonardo Uribe (JIRA)

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

Leonardo Uribe resolved MYFACES-2177.
-

   Resolution: Fixed
Fix Version/s: 1.2.7-SNAPSHOT
 Assignee: Leonardo Uribe

The code on ConvertDateTimeTag is right, the problem comes from tld generation. 
Really is an exception to the rule, so the best is change on the velocity 
template. Thanks for point this issue.

 ConvertDateTimeTag timeZone does not work with ValueExpression of return type 
 String
 

 Key: MYFACES-2177
 URL: https://issues.apache.org/jira/browse/MYFACES-2177
 Project: MyFaces Core
  Issue Type: Bug
Affects Versions: 1.2.6
Reporter: Philipp Schoepf
Assignee: Leonardo Uribe
 Fix For: 1.2.7-SNAPSHOT


 A always get an exception like this when I bind a VE avaluating to a TimeZone 
 pattern (GMT+1) to the timeZone property of the convertDateTime converter:
  java.lang.IllegalArgumentException: Cannot convert GMT+1 of type class 
 java.lang.String to class java.util.TimeZone
 This worked for MyFaces 1.1 and since we are currently migrating this breaks 
 our code.
 I believe the root cause for this problem is the definition of the 
 convertDateTimeTag in the myfaces tld, which will never allow VE with return 
 types other than java.util.TimeZone to be bound:
 attribute
  description![CDATA[The time zone to use instead of GMT (the 
 default timezone). When
 this value is a value-binding to a TimeZone instance, that
 timezone is used. Otherwise this value is treated as a String
 containing a timezone id, ie as the ID parameter of method
 java.util.TimeZone.getTimeZone(String).]]/description
  nametimeZone/name
  deferred-value
  typejava.util.TimeZone/type
  /deferred-value
   /attribute

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



[jira] Resolved: (MYFACES-1808) h:commandLink doesn't execute action when Javascript is disabled

2009-05-15 Thread Leonardo Uribe (JIRA)

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

Leonardo Uribe resolved MYFACES-1808.
-

Resolution: Duplicate
  Assignee: Leonardo Uribe

This is a duplicate of MYFACES-1692. For more information, see the comments 
there.

 h:commandLink doesn't execute action when Javascript is disabled
 

 Key: MYFACES-1808
 URL: https://issues.apache.org/jira/browse/MYFACES-1808
 Project: MyFaces Core
  Issue Type: Bug
  Components: JSR-127
Affects Versions: 1.1.5
 Environment: Liferay Portal 4.3.5, Tomcat 6.0, Java 6
Reporter: Martin Goldhahn
Assignee: Leonardo Uribe
Priority: Minor
 Fix For: 1.1.7-SNAPSHOT


 I run the following view in a portlet (Liferay 4.3.5). I also have a 
 navigation rule for the back action.
 simple page:
%@ taglib uri=http://java.sun.com/jsf/core; prefix=f %
%@ taglib uri=http://java.sun.com/jsf/html; prefix=h %
f:view
   f:loadBundle basename=Language var=msgs /
   h:form id=articleForm
  h:outputText value=ARTICLE /
  h:commandLink action=back value=back/
   /h:form
 /f:view
 In the rendered page, when I click on the link. Nothing happens. 
 Debugging the code shows me that the form is not set to submitted in the 
 restore phase. 
 (org.apache.myfaces.shared_impl.renderkit.html.HtmlFormRenderBase, line 227 
 in version 1.1.5)
 When clicking the link, the form is not submitted and the parameter 
 articleForm_SUBMIT is not added to the request.

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



[jira] Resolved: (MYFACES-2008) Character encoding in Content-Type is ignored

2009-05-15 Thread Leonardo Uribe (JIRA)

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

Leonardo Uribe resolved MYFACES-2008.
-

   Resolution: Fixed
Fix Version/s: 1.1.7-SNAPSHOT
 Assignee: Leonardo Uribe

Thanks to Taro App for provide us this patch

 Character encoding in Content-Type is ignored
 -

 Key: MYFACES-2008
 URL: https://issues.apache.org/jira/browse/MYFACES-2008
 Project: MyFaces Core
  Issue Type: Bug
  Components: General
Affects Versions: 1.1.6
Reporter: Taro App
Assignee: Leonardo Uribe
 Fix For: 1.1.7-SNAPSHOT

   Original Estimate: 1h
  Remaining Estimate: 1h

 In a constructor of ServletExternalContextImpl.java, if character encoding is 
 looked up from Content-Type header, it is not set on request character 
 encoding.
 This bug exists in MyFaces Core 1.1.6 and also in SVN trunk for 1.1.
 This bug does not exists in 1.2.x. (The logic is moved to 
 calculateCharacterEncoding method, and fixed there.)
 Current Code:
 
 if (characterEncoding == null) {
 HttpSession session = httpServletRequest.getSession(false);
 if (session != null) {
 characterEncoding = (String) 
 session.getAttribute(ViewHandler.CHARACTER_ENCODING_KEY);
 }
 if (characterEncoding != null) {
 setCharacterEncodingMethod.invoke(servletRequest, new 
 Object[]{characterEncoding});
 }
 }
 
 Should be fixed to:
 
 if (characterEncoding == null) {
 HttpSession session = httpServletRequest.getSession(false);
 if (session != null) {
 characterEncoding = (String) 
 session.getAttribute(ViewHandler.CHARACTER_ENCODING_KEY);
 }
 }
 if (characterEncoding != null) {
 setCharacterEncodingMethod.invoke(servletRequest, new 
 Object[]{characterEncoding});
 }
 

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



[jira] Resolved: (MYFACES-2167) If graphicImage does not have value/url is not rendered in MyFaces Core JSF 1.1

2009-05-15 Thread Leonardo Uribe (JIRA)

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

Leonardo Uribe resolved MYFACES-2167.
-

   Resolution: Fixed
Fix Version/s: 1.1.7-SNAPSHOT
 Assignee: Leonardo Uribe  (was: Bruno Aranda)

 If graphicImage does not have value/url is not rendered in MyFaces Core JSF 
 1.1
 ---

 Key: MYFACES-2167
 URL: https://issues.apache.org/jira/browse/MYFACES-2167
 Project: MyFaces Core
  Issue Type: Bug
  Components: JSR-127
Affects Versions: 1.1.6
Reporter: Jifeng Liu
Assignee: Leonardo Uribe
 Fix For: 1.1.7-SNAPSHOT


 This issue also happens in MyFaces Core JSF 1.1. Could you fix it in Core JSF 
 1.1 as well.

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



[jira] Resolved: (MYFACES-2160) The action in tr:commandButton is not fired if you use the trinidad jsf library (in 1.1.5 it works).

2009-05-15 Thread Leonardo Uribe (JIRA)

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

Leonardo Uribe resolved MYFACES-2160.
-

   Resolution: Fixed
Fix Version/s: 1.1.7-SNAPSHOT
 Assignee: Leonardo Uribe

On trinidad 1.1.x, the state is saved on a param called 
org.apache.myfaces.trinidad.faces.STATE instead javax.faces.ViewState (note 
that on jsf 1.2 the state param was normalized so trinidad 1.2.x uses 
javax.faces.ViewState). 

The fix is allow RestoreViewExecutor to recognize a postback if trinidad state 
param is on the request.

 The action in tr:commandButton is not fired if you use the trinidad jsf 
 library (in 1.1.5 it works).
 

 Key: MYFACES-2160
 URL: https://issues.apache.org/jira/browse/MYFACES-2160
 Project: MyFaces Core
  Issue Type: Bug
Affects Versions: 1.1.6
 Environment: Trinidad JSF Library
Reporter: Roger Wegmann
Assignee: Leonardo Uribe
 Fix For: 1.1.7-SNAPSHOT

 Attachments: test.zip


 I can provide an example. If I change in my pom file
   dependency
   groupIdorg.apache.myfaces.core/groupId
   artifactIdmyfaces-impl/artifactId
   version1.1.5/version
   scoperuntime/scope
   /dependency
 to 
   dependency
   groupIdorg.apache.myfaces.core/groupId
   artifactIdmyfaces-impl/artifactId
   version1.1.6/version
   scoperuntime/scope
   /dependency
 it doesn't work anymore. I only change the version from 1.1.5 to 1.1.6 and 
 the commandButton doesn't work anymore. It should navigate to an other page 
 but it doesn't work anymore.

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



Re: [TRINIDAD][API] JIRA-1474 Add Window abstraction to Trinidad

2009-05-15 Thread Blake Sullivan

Simon Lessard said the following On 5/15/2009 12:35 PM PT:

Hi Blake,

I'm + 1 with the idea and the general API, but I have some concerns:

   1. I don't really like the API to expose a read only map through
  WindowManager.getWindows, I would prefer
  WindowManager.getWindowIds(ExternalContext) and
  WindowManager.getWindow(ExternalContext, String);

Is your worry over that the Map is read only?  The two separate methods 
prevent the developer from leveraging the Map interface.


   1. WindowListener should be an interface extending EventListener
  one of its subclasses;

Fair enough, the rationale for making this an abstract class was so we 
could add more event types later.  However, since the WindowManager 
class is itself an abstract class we could add more event listener 
interfaces later to the WindowManager later, so I agree that the 
interface is fine


   1. Either WindowListener or WindowLifecycleEvent is wrongly named
  from a JSF point of view (althoguh it could be potentially
  correctly named in Swing). All JSF Listener handle events with
  the exact same name as the listener, but with Listener changed
  to Event, so it should either be WindowLifecycleListener or
  WindowEvent for the API to be coherent with the usual JSF
  nomenclature.

See above.  I agree that if we use an interface then the listener class 
must be WindowLifecycleListener


   1. WindowListener method is not properly named. Pretty much as
  above, in JSF all listener methods are called processevenType
  so it should either be public void processWindowEvent or
  processWindowLifecycleEventdepending on the resolution of the
  previous point;
   2. The process method parameters do not match the usual listener
  convention to receive a single event object. Would it be
  possible to place the ExternalContext instance in the event?

I guess we could put the ExternalContext in the event, though the field 
will need to be transient and getExternalContext() method on the event 
would need to document that it might return null if the event has been 
serialized.  All of which is pretty gross.  In this case the extra 
parameter is much cleaner.  I believe that the convention is really to 
aid Java Beans design tools using introspection and would prefer 
cleanliness in this case.


   1. I would prefer to see WindowManager.isCurrentWindowNew as
  Window.isNew, it's more OOP correct;

OK.  The original implementation only tracked the new status of the 
current window, which was tracked by the WindowManager (which is why the 
WindowManager).  However, due to the need to answer this question in the 
face of redirects and other weirdness, the Windows in the implementation 
I have been testing do maintain their new state, so I agree that it 
makes more sense for the Window to answer this question.


   1. Actually I would prefer the same for the
  add/get/removeWindowListener


Prefer the same what?  Are you talking about the ExternalContext?

Thanks for the helpful feedback.

--Blake Sullivan



Regards,

~ Simon


On Fri, May 15, 2009 at 3:09 PM, Blake Sullivan 
blake.sulli...@oracle.com mailto:blake.sulli...@oracle.com wrote:


Here is the proposed api:

package org.apache.myfaces.trinidad.context;


/**
* Represents a Window in the current user's Session.  Windows are
created and vended
* by the Session's WindowManager and the Window for the current
request is
* available from codeWindowManager.getCurrentWindow/code
* @see WindowManager#getCurrentWindow
*/
public abstract class Window implements Serializable
{
 /**
 * p
 * Represents the current state of the Window.  Windows start out
codeOPEN/code,
 * when the current window's document is being unloaded, they move
to the codeUNLOADING/code
 * state and then either move back to the codeOPEN/code state
if the Window's content
 * is populated with a new document from the same application, or
to the codeCLOSED/code
 * state if it is not.
 * /pp
 * This represents the framework's best guess at the current
status of the Window.
 * /p
 */
 public enum LifecycleState
 {
  /** The Window is currently open */
  OPEN,

  /** The Window is being unloaded */
  UNLOADING,

  /** The Window is believed to be closed, either because the
window was explicitly closed
   *  or because the window is suspected to have been closed
   */
  CLOSED
 }

 /**
 * Represents how the window is used in the application
 */
 public enum Usage
 {
  /** Used as a top-level application window */
  FRAME,

  /** Used as a dialog */
  DIALOG
 }

 /**
 * @return The unique identifier for this Window within the Session
 */
 public abstract String getId();

 /**
 * @return The current state of the Window
 */
 public abstract 

[jira] Commented: (MYFACES-2160) The action in tr:commandButton is not fired if you use the trinidad jsf library (in 1.1.5 it works).

2009-05-15 Thread Leonardo Uribe (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-2160?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=12710072#action_12710072
 ] 

Leonardo Uribe commented on MYFACES-2160:
-

Thanks a lot to Roger Wegmann for the test provided. It helps a lot.

 The action in tr:commandButton is not fired if you use the trinidad jsf 
 library (in 1.1.5 it works).
 

 Key: MYFACES-2160
 URL: https://issues.apache.org/jira/browse/MYFACES-2160
 Project: MyFaces Core
  Issue Type: Bug
Affects Versions: 1.1.6
 Environment: Trinidad JSF Library
Reporter: Roger Wegmann
Assignee: Leonardo Uribe
 Fix For: 1.1.7-SNAPSHOT

 Attachments: test.zip


 I can provide an example. If I change in my pom file
   dependency
   groupIdorg.apache.myfaces.core/groupId
   artifactIdmyfaces-impl/artifactId
   version1.1.5/version
   scoperuntime/scope
   /dependency
 to 
   dependency
   groupIdorg.apache.myfaces.core/groupId
   artifactIdmyfaces-impl/artifactId
   version1.1.6/version
   scoperuntime/scope
   /dependency
 it doesn't work anymore. I only change the version from 1.1.5 to 1.1.6 and 
 the commandButton doesn't work anymore. It should navigate to an other page 
 but it doesn't work anymore.

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



Re: [source control] git and the ASF ...

2009-05-15 Thread Werner Punz

Ah lovely saturday morning and a general technology discussion.

Ok here is the deal, it is a very common practice to use git for local 
versioning and svn or cvs for hosting the code (I do that very often). 
There are downsides to this practice. First of all git-svn does not have
external parsing. Git has a similar mechanism subprojects but there is 
no bridget between git and svn in this regard, you have to symlink for 
instance manually to match the externals.


Secondly it is a speed issue as well. Git is a distributed filesystem 
which does most operations locally and delegates the server to a storage 
system only. Which means you have local branches and local commit 
histories (one of the reasons why I use it) but the downside is it 
mirrors literally all revisions into you local filesystem (which is not 
as bad as it sounds since it stores the revisions very efficiently, way 
more than svn does) which means the initial mirror of a bigger project 
takes a very long time. And there the apache infrastructure which by far

is not our idea comes into the game, having a read only git mirror
speeds up this process much more swiftly.

As for Andrews argument, this is no bothering from our side, as it seems 
the infrastructure people have been working on this for almost a year 
now and now have a stable infrastructure and many projects have moved

towards this read only mirror.

The also seem to think about providing the same fo Mercurial in the future.

Werner



Mike Kienenberger schrieb:

I don't know much about git, but I know that other committers on
Apache Cayenne use git to commit to the Cayenne svn, so it's certainly
possible to do what Andrew suggests.   From my limited git
understanding, that's the typical practice of using git -- as a
front-end to svn or cvs.

On Fri, May 15, 2009 at 4:08 PM, Andrew Robinson
andrew.rw.robin...@gmail.com wrote:

I would say -1. Seems pointless to use another version control client
that is not 100% compatible with SVN when the SVN command-line and UI
clients works fine. What next, a mercurial read-only repository too?
We have chosen to use subversion with MyFaces at Apache, I don't see
any reason to support other clients just to appease some peoples
technology fix. But this is just my opinion.

Note that there are tools out there to do this type of support from
the client, not the server. For example,
http://www.selenic.com/mercurial/wiki/WorkingWithSubversion details
how to use Mercurial as an SVN client and even be able to commit to
SVN! In my opinion, if someone wants to use git, then they should find
a similar tool for git and not burden the folks at Apache.

-Andrew

FYI:
http://www.russellbeattie.com/blog/distributed-revision-control-systems-git-vs-mercurial-vs-svn
http://texagon.blogspot.com/2008/02/use-mercurial-you-git.html
http://weblog.masukomi.org/2008/02/07/a-rebuttal-to-use-mercurial-you-git

On Fri, May 15, 2009 at 10:45 AM, Matthias Wessendorf mat...@apache.org wrote:

some more infos:

http://wiki.apache.org/general/GitAtApache

On Fri, May 15, 2009 at 11:39 AM, Matthias Wessendorf mat...@apache.org wrote:

On Fri, May 15, 2009 at 11:37 AM, Werner Punz werner.p...@gmail.com wrote:

Matthias Wessendorf schrieb:
core

Ok, I filed this:
https://issues.apache.org/jira/browse/INFRA-2053

maybe we should also think about making the JSF 1.1.x stuff a branch ...
(since we already work on 2.0.x)


+1

1.1.x branch
1.2 trunk
2.0 branch

hehe :-) just wrote a similar email :-)

-Matthias


instead of

1.1 trunk
1.2 trunk_1.2
2.0 branch

this also helps the infrastructure people!








--
Matthias Wessendorf

blog: http://matthiaswessendorf.wordpress.com/
sessions: http://www.slideshare.net/mwessendorf
twitter: http://twitter.com/mwessendorf




--
Matthias Wessendorf

blog: http://matthiaswessendorf.wordpress.com/
sessions: http://www.slideshare.net/mwessendorf
twitter: http://twitter.com/mwessendorf