Pete Muir | 1 Jun 13:04 2010
Picon

Re: Messages API in i18n


On 28 May 2010, at 15:54, Lincoln Baxter, III wrote:

> Hi Ken, no worries. It took a while to get the API's worked out ;) See my responses inline.
> 
> On Fri, May 28, 2010 at 3:11 AM, Ken Finnigan
<ken.finnigan@...> wrote:
> Hi Lincoln,
> 
> Sorry for taking so long to respond to your email!
> 
> I've taken a look at the Messages code you committed the other day and I had a few questions about some areas
that I didn't quite understand in reading the code:
> 
> 	• I noticed that Bundles contained  <at> Named and was wondering what your thoughts were about the bundles
being directly EL accessible?
> This is to provide i18n support directly in EL-like use-cases, such as Facelets:
> 
> <h1>#{bundles.headers.loginHeader}</h1> -- Dan could highlight that use case a bit more. Dan?

It would be better to route this through the unified Message API so that people can use interpolation of
parameters and the unified message bundles IMO.

>  
> 	• With BundleMessage I wasn't sure if it was purely the Builder pattern that dictated that the
BundleKey was set through a method call as opposed to on the constructor or whether there was another reason?
> 
> Yeah, since we're using the Builder pattern, everything gets set through a setter. It makes the usage
consistent, otherwise you'd have 50 constructors ;) I went with the builder pattern because I didn't want
method explosion.
(Continue reading)

Pete Muir | 3 Jun 00:11 2010
Picon

Re: Seam POMs

And now I've updated all modules so that they inherit the seam-parent (used to specify example and test
dependencies) and import org.jboss.seam:seam (used to specify runtime dependencies)

If you need to update dependencies, you can place an override in your module's parent POM, and make sure to
update it in the parent or the stack pom. If you do such an update, you should build/test all modules to make
sure they work with your update. Having installed the new stack POM, run mvn clean install
-Dseam.version=3.0.0-SNAPSHOT to pick up the new stack POM.

I've also created a distribution for all modules that is uniform. To create it run mvn clean install -Ddist.

The ModuleAnatomy page is updated with the above info.

Please email me if you have queries/problems/suggestions.

Pete

On 28 May 2010, at 13:42, Pete Muir wrote:

> All,
> 
> I've updated / rationalized these to use the defaults from weld-parent. Please let me know if this breaks
your build somehow.
> 
> I'll be working on distribution stuff next.
> 
> Pete
> _______________________________________________
> seam-dev mailing list
> seam-dev@...
> https://lists.jboss.org/mailman/listinfo/seam-dev
(Continue reading)

Pete Muir | 3 Jun 00:20 2010
Picon

Re: Seam POMs

Oh, I should add, maven 3.0 is now required. You should probably use 3.0 beta1.

On 2 Jun 2010, at 23:11, Pete Muir wrote:

> And now I've updated all modules so that they inherit the seam-parent (used to specify example and test
dependencies) and import org.jboss.seam:seam (used to specify runtime dependencies)
> 
> If you need to update dependencies, you can place an override in your module's parent POM, and make sure to
update it in the parent or the stack pom. If you do such an update, you should build/test all modules to make
sure they work with your update. Having installed the new stack POM, run mvn clean install
-Dseam.version=3.0.0-SNAPSHOT to pick up the new stack POM.
> 
> I've also created a distribution for all modules that is uniform. To create it run mvn clean install -Ddist.
> 
> The ModuleAnatomy page is updated with the above info.
> 
> Please email me if you have queries/problems/suggestions.
> 
> Pete
> 
> On 28 May 2010, at 13:42, Pete Muir wrote:
> 
>> All,
>> 
>> I've updated / rationalized these to use the defaults from weld-parent. Please let me know if this breaks
your build somehow.
>> 
>> I'll be working on distribution stuff next.
>> 
>> Pete
(Continue reading)

Dan Allen | 3 Jun 02:15 2010
Picon

Re: Seam POMs

On Thu, Jun 3, 2010 at 12:20 AM, Pete Muir <pmuir-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> wrote:
Oh, I should add, maven 3.0 is now required. You should probably use 3.0 beta1.

Based on the incredible talk given by Matthew McCullough [1] at Jazoon, this is absolutely the time to make the switch to Maven 3.

Maven 3 is a drop-in replacement for Maven 2 configuration with the exception that it enforces rules that should have been enforced long ago (plugin versions, no dependency duplicates, etc), which Pete has ensured we've stuck to already. The other major benefits of upgraded are speed, less memory consumption, more intelligent caching and the Maven Shell.


-Dan


--
Dan Allen
Senior 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
_______________________________________________
seam-dev mailing list
seam-dev@...
https://lists.jboss.org/mailman/listinfo/seam-dev
Michael Schütz | 3 Jun 10:06 2010
Picon

Seam3: Will injection become available with in final methods?

Hi to all,

in Seam2, using injected member within final method will cause an NPE at Runtime. The reason for that is, that Seam2 uses cglib for dynamic proxying und subclassing is not possible for final methods.

Example:
<at> Name("simpleSeamComp")
public class SimpleSeamComponent {
    public String getName() {
        return "Sam";
    }
}

<at> Name("finalSeamComp")
public class FinalSeamComponent {

    <at> In(create = true)
    private SimpleSeamComponent simpleSeamComp;

    // causes NullPointerException
    public final String getHello() {
        return simpleSeamComp.getName();
    }
}


How will Seam3/CDI behave in that case?



Thanks and regards
Michael

_______________________________________________
seam-dev mailing list
seam-dev@...
https://lists.jboss.org/mailman/listinfo/seam-dev
Michael Schütz | 3 Jun 11:17 2010
Picon

Re: Seam3: Will injection become available with in final methods?

OK,
in CDI it's disallowed by spec:
" 5.4.1.Unproxyable bean types
Certain legal bean types cannot be proxied by the container:
•classes which don't have a non-private constructor with no parameters,
•classes which are declared final or have final methods

If an injection point whose declared type cannot be proxied by the container resolves to a bean with a normal scope, the
 container automatically detects the problem and treats it as a deployment problem."

Anyway, the NPE in Seam2 is misleading. A cglib exception is swallowed. Correct?

Michael


2010/6/3 Michael Schütz <michaelschuetz83-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Hi to all,

in Seam2, using injected member within final method will cause an NPE at Runtime. The reason for that is, that Seam2 uses cglib for dynamic proxying und subclassing is not possible for final methods.

Example:
<at> Name("simpleSeamComp")
public class SimpleSeamComponent {
    public String getName() {
        return "Sam";
    }
}

<at> Name("finalSeamComp")
public class FinalSeamComponent {

    <at> In(create = true)
    private SimpleSeamComponent simpleSeamComp;

    // causes NullPointerException
    public final String getHello() {
        return simpleSeamComp.getName();
    }
}


How will Seam3/CDI behave in that case?



Thanks and regards
Michael


_______________________________________________
seam-dev mailing list
seam-dev@...
https://lists.jboss.org/mailman/listinfo/seam-dev
Pete Muir | 3 Jun 13:41 2010
Picon

New JBoss Maven repo

All,

It may have escaped peoples notice that the JBoss Maven repos changed - see
http://community.jboss.org/docs/DOC-15169 for the correct set up.

Pete
Jason Porter | 3 Jun 15:08 2010
Picon

Re: Seam3: Will injection become available with in final methods?

Seam2 uses javassit, not cglib.  It makes sense once you understand
it, and I think the documentation says injection cannot be done with
final methods / variables.  I know I was bit by this early on in my
Seam usage.  It may just be an issue getting to know Seam.

On Thu, Jun 3, 2010 at 03:17, Michael Schütz <michaelschuetz83 <at> gmail.com> wrote:
> OK,
> in CDI it's disallowed by spec:
> " 5.4.1.Unproxyable bean types
> Certain legal bean types cannot be proxied by the container:
> •classes which don't have a non-private constructor with no parameters,
> •classes which are declared final or have final methods
>
> If an injection point whose declared type cannot be proxied by the container
> resolves to a bean with a normal scope, the
>  container automatically detects the problem and treats it as a deployment
> problem."
>
> Anyway, the NPE in Seam2 is misleading. A cglib exception is swallowed.
> Correct?
>
> Michael
>
>
> 2010/6/3 Michael Schütz <michaelschuetz83 <at> gmail.com>
>>
>> Hi to all,
>>
>> in Seam2, using injected member within final method will cause an NPE at
>> Runtime. The reason for that is, that Seam2 uses cglib for dynamic proxying
>> und subclassing is not possible for final methods.
>>
>> Example:
>>  <at> Name("simpleSeamComp")
>> public class SimpleSeamComponent {
>>     public String getName() {
>>         return "Sam";
>>     }
>> }
>>
>>  <at> Name("finalSeamComp")
>> public class FinalSeamComponent {
>>
>>      <at> In(create = true)
>>     private SimpleSeamComponent simpleSeamComp;
>>
>>     // causes NullPointerException
>>     public final String getHello() {
>>         return simpleSeamComp.getName();
>>     }
>> }
>>
>>
>> How will Seam3/CDI behave in that case?
>>
>>
>>
>> Thanks and regards
>> Michael
>>
>
>
> _______________________________________________
> seam-dev mailing list
> seam-dev <at> lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/seam-dev
>
>

--

-- 
Jason Porter

Software Engineer
Open Source Advocate

PGP key id: 926CCFF5
PGP key available at: keyserver.net, pgp.mit.edu

_______________________________________________
seam-dev mailing list
seam-dev <at> lists.jboss.org
https://lists.jboss.org/mailman/listinfo/seam-dev
Denis Forveille | 3 Jun 18:08 2010
Picon

Impact of the change of scope (EVENT to SESSION) of the EjbSynchronizations SFSB component?

Hi,

Recently, to address JIRA-4542
(https://jira.jboss.org/browse/JBSEAM-4542) , the scope of the
EjbSynchronizations component has been changed from EVENT to SESSION.

I'm worrying about the impact of such a change on the behavior on Seam
applications

Is this change safe?  Is there really no impact on the applications?

Please have a look at JIRA-4542 for more details

Thx.
Pete Muir | 3 Jun 19:44 2010
Picon

Re: Impact of the change of scope (EVENT to SESSION) of the EjbSynchronizations SFSB component?

I'm slightly (sorry, that's irony ;-) concerned about this, it just seems wrong. System transactions are
request scoped in Seam.

Why do we need to do this?

On 3 Jun 2010, at 17:08, Denis Forveille wrote:

> Hi,
> 
> Recently, to address JIRA-4542
> (https://jira.jboss.org/browse/JBSEAM-4542) , the scope of the
> EjbSynchronizations component has been changed from EVENT to SESSION.
> 
> I'm worrying about the impact of such a change on the behavior on Seam
> applications
> 
> Is this change safe?  Is there really no impact on the applications?
> 
> Please have a look at JIRA-4542 for more details
> 
> Thx.
> _______________________________________________
> seam-dev mailing list
> seam-dev@...
> https://lists.jboss.org/mailman/listinfo/seam-dev

Gmane