I am wondering whether the myfaces bundle could also export the spi.impl package, I hope to take advantage of some codes there, e.g. DefaultFacesConfigurationProvider, it contains some sort algorithm. thanks.
2010/12/6 David Jencks <[email protected]> > Here's Leonardo's results. IIUC he thinks the problem must be in geronimo > somewhere. > > IIUC I'van's work is related to this so I think we should wait until that > is further along before panicking :-) > > thanks > david jencks > > > Begin forwarded message: > > *From: *Leonardo Uribe <[email protected]> > *Date: *December 5, 2010 11:16:05 AM PST > *To: *David Jencks <[email protected]> > *Subject: **Re: ordering tck failures in geronimo* > > Hi David > > I tried to run the test files in tomcat: > > jsf_appconfigresources_absolute_ordering_web > jsf_appconfigresources_startupbehavior_web > jsf_appconfigresources_relative_ordering_web > > Obviously doing some small changes to make it work (remove war > META-INF/MANIFEST.MF), and I reviewed the ordering algorithm to see if by > some reason absolute ordering is taken into account after relative ordering, > but all tests were succeed. > > The latest changes done on myfaces are just for reorganize code, but > nothing was changed in behavior. > > But I notice something weird about this tests. Look > jsf_appconfigresources_absolute_ordering_web. In theory there are four > faces-config.xml files but the ones inside the jar file reference a class > defined outside the jar (the class is on WEB-INF/classes). Maybe this is a > not problem, but keep it in mind, because geronimo could be strict about > this fact. Anyway, I don't think this could be the problem. > > I think the problem is the code implementing SPI interfaces in geronimo has > a bug or it is just not implemented. If only B could be found, that means we > can't find a.faces-config.xml and b.faces-config.xml from config.jar file in > WEB-INF/lib folder. So, probably this jar is not included on the classpath > at start, so something on geronimo must be fixed first. Then, there is one > spi interface provided by MyFaces to customize this scanning in a custom > way: > > org.apache.myfaces.spi.FacesConfigResourceProvider > > It just has a method called: > > public abstract Collection<URL> > getMetaInfConfigurationResources(ExternalContext context) throws > IOException; > > The default implementation is here: > > org.apache.myfaces.config.DefaultFacesConfigResourceProvider > > The idea is just return a collection of all META-INF/faces-config.xml and > META-INF/[prefix].faces-config.xml on the classpath that will be added as > applicationConfigResources and then used in the ordering algorithm (and then > feed into the final configuration). > > I hope this helps. > > regards, > > Leonardo Uribe > > 2010/12/4 David Jencks <[email protected]> > >> Hi Leonardo, >> >> The tests are >> >> >> >> com/sun/ts/tests/jsf/spec/appconfigresources/absolute_ordering/URLClient#java#testDocumentAbsoluteOrdering >> - FAILED >> >> >> com/sun/ts/tests/jsf/spec/appconfigresources/relative_ordering/URLClient#java#testDocumentRelativeOrderingTest1 >> - FAILED >> >> >> com/sun/ts/tests/jsf/spec/appconfigresources/startupbehavior/URLClient#java#applicationConfigurationfilesTest1 >> - FAILED >> >> >> com/sun/ts/tests/jsf/spec/appconfigresources/startupbehavior/URLClient#java#applicationConfigurationfilesTest2 >> - PASSED >> >> From javatest.log (not sure if this is unique to the geronimo tck setup) I >> see for the first test >> >> ************************************************************ >> * props file set to >> "/var/folders/J0/J041U4tbGqeIsK+mFxmskk+++TI/-Tmp-/david-cts-props.txt" >> ************************************************************ >> 12-04-2010 09:30:55: TRACE: ####### Value of harness.socket.retry.count >> is "10" >> 12-04-2010 09:30:55: TRACE: ####### Value of harness.log.port is "2000" >> 12-04-2010 09:30:55: TRACE: ####### Actual bind value of >> harness.log.port is "2000" >> 12-04-2010 09:30:55: TRACE: *** in EETest.run(argv,p) >> 12-04-2010 09:30:55: TRACE: >> TESTCLASS=com.sun.ts.tests.jsf.spec.appconfigresources.absolute_ordering.URLClient >> 12-04-2010 09:30:55: TRACE: ABOUT TO GET SETUP METHOD! >> 12-04-2010 09:30:55: TRACE: GOT SETUP METHOD! >> 12-04-2010 09:30:55: TRACE: ** IN getRunMethod: >> testClass=com.sun.ts.tests.jsf.spec.appconfigresources.absolute_ordering.URLClient >> 12-04-2010 09:30:55: TRACE: ** IN getRunMethod: >> testname=testDocumentAbsoluteOrdering >> 12-04-2010 09:30:55: TRACE: ** GOT RUN METHOD! >> 12-04-2010 09:30:55: TRACE: **runmethod=testDocumentAbsoluteOrdering >> 12-04-2010 09:30:55: TRACE: GOT CLEANUP METHOD! >> 12-04-2010 09:30:55: TRACE: ABOUT TO INVOKE SETUP METHOD! >> 12-04-2010 09:30:55: Test setup OK >> 12-04-2010 09:30:55: TRACE: INVOKED SETUP METHOD! >> 12-04-2010 09:30:55: TRACE: ABOUT TO INVOKE EETEST RUN METHOD! >> 12-04-2010 09:30:56: TRACE: [WIRE] - >> "GET >> /jsf_appconfigresources_absolute_ordering_web/faces/test.xhtml >> HTTP/1.1[\r][\n]" >> 12-04-2010 09:30:56: TRACE: [WIRE] - >> "User-Agent: Mozilla/4.0 >> (compatible; MSIE 6.0; Windows 98)[\r][\n]" >> 12-04-2010 09:30:56: TRACE: [WIRE] - >> "Host: localhost:8080[\r][\n]" >> 12-04-2010 09:30:56: TRACE: [WIRE] - >> "[\r][\n]" >> 12-04-2010 09:30:56: TRACE: [WIRE] - << "HTTP/1.1 200 OK[\r][\n]" >> 12-04-2010 09:30:56: TRACE: [WIRE] - << "HTTP/1.1 200 OK[\r][\n]" >> 12-04-2010 09:30:56: TRACE: [WIRE] - << "Set-Cookie: >> oam.Flash.RENDERMAP.TOKEN=-19gsaahjq3;Path=/jsf_appconfigresources_absolute_ordering_web[\r][\n]" >> 12-04-2010 09:30:56: TRACE: [WIRE] - << "Expires: Thu, 01-Jan-1970 >> 00:00:00 GMT[\r][\n]" >> 12-04-2010 09:30:56: TRACE: [WIRE] - << "Set-Cookie: >> JSESSIONID=zo172tswrh8fige9pu6c0wld;Path=/jsf_appconfigresources_absolute_ordering_web[\r][\n]" >> 12-04-2010 09:30:56: TRACE: [WIRE] - << "Content-Type: >> text/html;charset=UTF-8[\r][\n]" >> 12-04-2010 09:30:56: TRACE: [WIRE] - << "Content-Length: 369[\r][\n]" >> 12-04-2010 09:30:56: TRACE: [WIRE] - << "Server: Jetty(8.0.0.M2)[\r][\n]" >> 12-04-2010 09:30:56: TRACE: [WIRE] - << "[\r][\n]" >> 12-04-2010 09:30:56: TRACE: [WIRE] - << "<?xml version="1.0" >> encoding="UTF-8"?>[\n]" >> 12-04-2010 09:30:56: TRACE: [WIRE] - << "<!DOCTYPE html PUBLIC >> "-//W3C//DTD XHTML 1.0 Transitional//EN" " >> http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" >[\n]" >> 12-04-2010 09:30:56: TRACE: [WIRE] - << "<html xmlns=" >> http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">[\n]" >> 12-04-2010 09:30:56: TRACE: [WIRE] - << " <head>[\n]" >> 12-04-2010 09:30:56: TRACE: [WIRE] - << " <title>Document >> Ordering</title>[\n]" >> 12-04-2010 09:30:56: TRACE: [WIRE] - << " </head>[\n]" >> 12-04-2010 09:30:56: TRACE: [WIRE] - << " <body><span >> id="status">Order Correct: false</span>[\n]" >> 12-04-2010 09:30:56: TRACE: [WIRE] - << " </body>[\n]" >> 12-04-2010 09:30:56: TRACE: [WIRE] - << "</html>" >> 12-04-2010 09:30:58: ERROR: Test FAILED >> 12-04-2010 09:30:58: ERROR: -------------------------- >> 12-04-2010 09:30:58: ERROR: Unexpected Test Result For status! >> 12-04-2010 09:30:58: ERROR: Expected: Order Correct: true >> 12-04-2010 09:30:58: ERROR: Found: Order Correct: false >> 12-04-2010 09:30:58: ERROR: -------------------------- >> 12-04-2010 09:30:58: ERROR: Test FAILED. Check messages for details. >> 12-04-2010 09:30:58: ERROR: Exception at: >> 12-04-2010 09:30:58: ERROR: com.sun.ts.lib.harness.EETest$Fault: Test >> FAILED. Check messages for details. >> at >> com.sun.ts.tests.jsf.common.client.BaseHtmlUnitClient.handleTestStatus(BaseHtmlUnitClient.java:243) >> at >> com.sun.ts.tests.jsf.spec.appconfigresources.absolute_ordering.URLClient.testDocumentAbsoluteOrdering(URLClient.java:69) >> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >> at >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) >> at >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) >> at java.lang.reflect.Method.invoke(Method.java:597) >> at com.sun.ts.lib.harness.EETest.run(EETest.java:495) >> at com.sun.ts.lib.harness.EETest.getPropsReady(EETest.java:392) >> at com.sun.ts.lib.harness.EETest.run(EETest.java:252) >> at >> com.sun.ts.tests.jsf.spec.appconfigresources.absolute_ordering.URLClient.run(URLClient.java:34) >> at >> com.sun.ts.tests.jsf.spec.appconfigresources.absolute_ordering.URLClient.main(URLClient.java:26) >> >> 12-04-2010 09:30:58: Test cleanup OK >> STATUS:Failed.Test case throws exception: Test FAILED. Check messages for >> details. >> >> >> which is not too informative. >> >> IIRC when I ran in the debugger it looked like it was looking for a >> faces-config.xml named "A" but only "B" had been found. >> >> I hope this is enough for you to figure out where to look. >> >> Many thanks! >> david jencks >> >> On Dec 4, 2010, at 3:10 PM, Leonardo Uribe wrote: >> >> Hi David >> >> I have NDA (I run the tck test for myfaces), but I'm not on geronimo tck >> list. I downloaded the java EE 6 tck and I can see some test that are not >> JSF 2.0 tck. If you want, could you send the error to me?. In that way, I >> can take a look and see if there is something wrong on myfaces or not. >> >> regards, >> >> Leonardo Uribe >> >> 2010/12/4 David Jencks <[email protected]> >> >> I'm seeing some new tck failures in some tests related to config ordering >>> in the jsf tests in geronimo. I haven't figured out yet if this is due to a >>> recent change in myfaces or something in the geronimo integration. I've >>> posted some details on the geronimo tck list: if anyone with an NDA, >>> expertise, and a few minutes could take a look and provide some advice I'd >>> really appreciate it. >>> >>> thanks >>> david jencks >>> >>> >> >> > > -- Ivan
