I've completed #2. It's now possible to run the tests using the remote
GlassFish 3.1 adapter without any modifications to the Solder test suite.
mvn clean install -Dincontainer-glassfish-rest -Dtest=CoreTest
The reorgnization resulted in a significantly reduced API. There are no
longer any beans in the API. What's left are mostly just annotations,
abstract classes and interfaces. That actually makes more sense, as I see
the API as the programming model enhancements, useful to application
developers. Extension writers, on the other hand, will require much deeper
access into Solder and should use the impl. (There's probably value in
having an SPI in that case, but we'll look into that later).
If you are working on a test, just ping the list or IRC so that we don't
waste cycles.
If you can push more stuff into the API and not break the tests on
GlassFish, feel free to do so. For instance, some core features like default
and generic beans are only in the impl right now. Those annotations, at
least, are appropriate for the API. The property query could probably also
be returned. Let's take it case-by-case.
-Dan
On Sat, Jan 22, 2011 at 11:44, Dan Allen <dan.j.allen(a)gmail.com> wrote:
I'm working on this (#2), should be done shortly. Stay tuned.
-Dan
On Sat, Jan 22, 2011 at 04:38, Shane Bryzak <sbryzak(a)redhat.com> wrote:
> Would it be helpful if I worked on moving the api classes to impl?
>
>
> On 22/01/11 08:08, Dan Allen wrote:
>
> On Fri, Jan 21, 2011 at 17:07, Dan Allen <dan.j.allen(a)gmail.com> wrote:
>
>> I've done #1.
>>
>> In order to pass any test successfully on GlassFish atm, you need to
>> use the seam-solder combined JAR. That's necessary until I complete #2.
>>
>> Here's a list of the test failures to give you an idea of where we are:
>>
>> Tests in error:
>> testDefaultBean(org.jboss.seam.solder.test.defaultbean.DefaultBeanTest)
>>
>>
testDefaultProducerMethod(org.jboss.seam.solder.test.defaultbean.DefaultBeanTest)
>>
>>
testDefaultProducerUsesCorrectDelegate(org.jboss.seam.solder.test.defaultbean.DefaultBeanTest)
>>
>>
testDefaultProducerFields(org.jboss.seam.solder.test.defaultbean.DefaultBeanTest)
>>
>>
testDefaultBeanObserverMethods(org.jboss.seam.solder.test.defaultbean.DefaultBeanTest)
>>
>> testGeneric(org.jboss.seam.solder.test.bean.generic.method.GenericBeanTest)
>>
>>
testGeneric(org.jboss.seam.solder.test.bean.generic.method.ProducersOnGenericBeanTest)
>>
>>
testProducerSuperclass(org.jboss.seam.solder.test.bean.generic.method.ProducersOnGenericBeanTest)
>>
>> testGeneric(org.jboss.seam.solder.test.bean.generic.method.GenericProductTest)
>>
>>
testDisposerCalled(org.jboss.seam.solder.test.bean.generic.method.GenericProductTest)
>>
>>
testGeneric(org.jboss.seam.solder.test.bean.generic.method.QualifierOnlyGenericBeanTest)
>>
>> testGeneric(org.jboss.seam.solder.test.bean.generic.field.GenericBeanTest)
>>
>> testScope(org.jboss.seam.solder.test.bean.generic.field.GenericBeanTest)
>>
>>
testGenericUnwrap(org.jboss.seam.solder.test.bean.generic.field.GenericBeanUnwrapTest)
>>
>>
testGeneric(org.jboss.seam.solder.test.bean.generic.field.ObserversOnGenericBeanTest)
>>
>>
testGeneric(org.jboss.seam.solder.test.bean.generic.field.ProducersOnGenericBeanTest)
>>
>> testGeneric(org.jboss.seam.solder.test.bean.generic.field.GenericProductTest)
>> testElResolver(org.jboss.seam.solder.test.el.ElTest)
>> testCustomElResolver(org.jboss.seam.solder.test.el.ElTest)
>>
>> testUnwrapsInjectionPoint(org.jboss.seam.solder.test.unwraps.UnwrapsTest)
>> testUnwraps(org.jboss.seam.solder.test.unwraps.UnwrapsTest)
>> org.jboss.seam.solder.test.serviceHandler.ServiceHandlerTest
>> org.jboss.seam.solder.test.serviceHandler.ServiceHandlerTest
>> org.jboss.seam.solder.test.bean.generic.alternative.GenericBeanAlternativeTest
>>
>> org.jboss.seam.solder.test.bean.generic.alternative.GenericBeanAlternativeTest
>>
>> Tests run: 94, Failures: 0, Errors: 25, Skipped: 0
>>
>> If you want to start testing, you need to change Deployments.java as
>> follows until #2 is done.
>>
>> public class Deployments
>> {
>> private static final String LOCAL_MAVEN_REPO =
>> System.getProperty("maven.repo.local") != null ?
>> System.getProperty("maven.repo.local") :
>> (System.getProperty("user.home") + File.separatorChar +
>> ".m2" + File.separatorChar + "repository");
>>
>> public static WebArchive baseDeployment()
>> {
>> return ShrinkWrap.create(WebArchive.class, "test.war")
>> .addLibraries(
>> new File(LOCAL_MAVEN_REPO + File.separator +
>> "org.jboss.seam.solder".replace(".", File.separator) +
>> File.separator + "seam-solder" + File.separator +
>> "3.0.0-SNAPSHOT" + File.separator +
"seam-solder-3.0.0-SNAPSHOT.jar"),
>> MavenArtifactResolver.resolve("org.jboss.logging",
>> "jboss-logging"))
>> .addWebResource(EmptyAsset.INSTANCE, "beans.xml");
>> }
>> }
>>
>
> Of course, you have to install the combined jar first ;)
>
> -Dan
>
> --
> Dan Allen
> Principal Software Engineer, Red Hat | Author of Seam in Action
> Registered Linux User #231597
>
>
http://mojavelinux.com
>
http://mojavelinux.com/seaminaction
>
http://www.google.com/profiles/dan.j.allen
>
>
>
--
Dan Allen
Principal Software Engineer, Red Hat | Author of Seam in Action
Registered Linux User #231597
http://mojavelinux.com
http://mojavelinux.com/seaminaction
http://www.google.com/profiles/dan.j.allen
--
Dan Allen
Principal Software Engineer, Red Hat | Author of Seam in Action
Registered Linux User #231597
http://mojavelinux.com
http://mojavelinux.com/seaminaction
http://www.google.com/profiles/dan.j.allen