Identifying which jars contains seam/cdi extensions and programmatic extensions ?
by Max Rydahl Andersen
Hi,
Talking with Seam/CDI tooling team at EclipseCon and we are still in the dark on how tooling are supposed to identify CDI extensions that are registered programmatically and often does not have a beans.xml to "mark" them.
Today we do it by simply scanning jars with *weld*.jar naming pattern (very brittle and not good for 3rd party extensions).
Furthermore we also have a list of classes to include/exclude since some components in these jars aren't CDI compliant.
How do we go about identifying these things ?
The idea discussed with Dan/Pete on this topic previously were to add a design-beans.xml
and use that as a marker + list the classes we should load/configure as possible injection/navigation candidates in the tooling.
I was hoping this were settled before Seam 3 GA but it seem to fallen through the cracks ?
Something I missed ?
/max
http://about.me/maxandersen
13 years, 8 months
is there an equivalent of Seam 2 @out in CDI / Seam 3
by Antoine Sabot-Durand
Hi all,
I try to shorten my Expression language code and don't want to create delegate methods in my controller to access propertir of a business component.
I didn't found something like @Out. Does it exists ?
Thanks,
Antoine
13 years, 8 months
Seam 3.0.0.Final testing status
by Ondřej Skutka
Hi!
QE team has finished testing Seam 3.0.0.Final!
What has been tested?
- Unit tests for each module
- Examples testing for JBoss 6.0.0 Final and Glassfish 3.1 with updated Weld
- Simple cluster failover test
- Ensure that the tagged version of a module is the same as the bundled jar (diffJars)
- Verify that all dependencies are bundled in the dist zip
- Documentation review
- Searching for broken links
- Simple GWT example
- Forge
There are 35 Issues (so far) affecting Seam 3.0.0.Final [1]
1 blocker (has been already fixed in the zip, SEAM-69)
1 critical (also already fixed in the zip, SEAM-68)
17 major
12 minor
4 trivial
There are no unresolved blocker or critical bugs [2] and so the build can be released!
Ondra
[1] https://issues.jboss.org/secure/IssueNavigator.jspa?requestId=12314337
[2] https://issues.jboss.org/secure/IssueNavigator.jspa?requestId=12314299
13 years, 8 months
Wicket module features
by Marek Śmigielski
Hi,
In last few day I have deeply thought over wicket modul features
essential to fully integrate with wicket framework. In wicket
architecture there is idea of model as a state bean. Its quite
different in terms of live cycle from scopes provided by CDI.
1. It is page scope (in some cirumstances more than one http request)
2. It is serialized after each request and store in session or disk.
Wicket modules misses integration throught model object with wicket
architecture so I've developed some integration with it. The idea is
that you can achieve CDI beans exactly in the same way like in JSF,
through expressionLanguage. So you can inject any named or other el
bean via:
@Inject @ModelExpression("#{nameBean}")
private SeamModel<String> label;
and later use it on your page directly:
Label label = new Label("headerLabel", headerLabelModel);
or wrap it by other wicket model:
@Inject @ModelExpression("#{registartion}")
private SeamModel<Registartion> registartion;
Form registrationForm = new Form("registartionForm", new
CompoundPropertyModel(registartion));
and later use it on whole form.
As I follow seam 3 for some time now I understand that this is time
for bugfix rather than adding new features. Is it possible to merge
this code before final realese?
Second feature is rather small and not soo excited as previous one.
I've prepared possiblity to inject ResourceStreamLocator. Deafault is
exactly the same as in wicket but I had also developed alternative
one, which enables throught configuration to change the place where
html file are stored. In my opinion it's also simplification.
If you would like me to contribute this two feature just let me know.
There was quite a lot of changes in this module since I fork it so
there could be some problem with clean merge.
regards,
Marek Smigielski
13 years, 8 months
Spreadsheets in Seam 3
by Nicklas Karlsson
Hi,
Once the release-hangover from Seam 3 is over, I'd like some feedback on
the design etc. I tinkered with it a bit a long time ago in
http://anonsvn.jboss.org/repos/seam/sandbox/modules/spreadsheet/ and it
resulted in a blog posting at
http://in.relation.to/Bloggers/SpreadsheetsInSeam3
Here are some random ramblings on the subject...
Spreadsheet model
-----------------------------
I think it would be a good idea to have a generic spreadsheet model. The UI
tags (or a JSF table) could then use a builder to generate
the model which in a final step could then be used to generate the actual
binary spreadsheet. This would allow for more room for the user
(by observing events) to modify the model before binary is generated. The
same model could also be used for producing ODF documents,
PDF, HTML, whatever.
Formatting model
-------------------------
Seam 2 used CSS xls-tags for cascading various formatting from workbook to
worksheet and down to cell level. This was OK but had some drawbacks
when it came to more advanced usage (e.g. different formatting for different
rows in a column since the formatting was frozen once calculated for a
UI-cell)
I'm tinkering with the idea of formatting rules with "appliesTo(cell) and
getFormatting()" semantics (see blog and code) but I'm not sure how to best
represent
those rules in the xhtml. Something like
<e:formatting>
<e:font size="12px"/>
</e:formatting>
That could be placed at different levels (workbook, worksheet, cell etc.)
that are then translated into different FormattingRules in the model but I'm
afraid
it would clutter down the xhtml file. And I'm not sure how to make the
"applies to" dynamic down to cell level. Would it be possible to keep all
the rules in one place,
give then names and the have some EL-function that is consulted if they
should be applied to a cell or not?
Delivery mechanism
-----------------------------
In Seam 2 there was the DocumentStore servlet for delivery. What will the
Seam 3 way be for the reporting module? A JSF 2 resource handler?
Headless JSF rendering
-------------------------------------
Has there been any progress in this? Is the Seam 2
swapping-out-the-writer-and-grab-string approach still the current approach?
I tried bootstrapping Mojarra
in SE with mocked servletcontexts etc. but never got it to work properly.
The idea of JSF in SE for background processing of views is still cute, I
think.
--
---
Nik
13 years, 8 months
seam-faces 3.0.0.Final: org.jboss.weld.exceptions.IllegalArgumentException: WELD-001324 Argument bean must not be null
by Sebastian E. Ovide
Hi All,
After upgrading to 3.0.0.Final (from Alpha3) I'm getting this exception
(using Glassfish 3.1)
any ideas ?
thanks
INFO: Exception when handling error trying to reset the response.
org.jboss.weld.exceptions.IllegalArgumentException: WELD-001324 Argument
bean must not be null
at
org.jboss.weld.manager.BeanManagerImpl.getReference(BeanManagerImpl.java:744)
at
org.jboss.weld.injection.ParameterInjectionPoint.getValueToInject(ParameterInjectionPoint.java:139)
at
org.jboss.weld.injection.MethodInjectionPoint.getParameterValues(MethodInjectionPoint.java:288)
at
org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstanceWithSpecialValue(MethodInjectionPoint.java:198)
at
org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:270)
at
org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:253)
at
org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:222)
at
org.jboss.weld.manager.BeanManagerImpl.notifyObservers(BeanManagerImpl.java:632)
at
org.jboss.weld.manager.BeanManagerImpl.fireEvent(BeanManagerImpl.java:619)
at
org.jboss.weld.manager.BeanManagerImpl.fireEvent(BeanManagerImpl.java:613)
at
org.jboss.seam.faces.event.PhaseEventBridge.handlePhase(PhaseEventBridge.java:80)
at
org.jboss.seam.faces.event.PhaseEventBridge.beforePhase(PhaseEventBridge.java:88)
at
org.jboss.seam.faces.event.DelegatingPhaseListener.beforePhase(DelegatingPhaseListener.java:28)
at com.sun.faces.lifecycle.Phase.handleBeforePhase(Phase.java:228)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:99)
at
com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:410)
at
org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1534)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:343)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:215)
at
org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:61)
at
org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:108)
at
org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:137)
at
org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:81)
at
org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66)
at
org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:359)
at
org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:275)
at
org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
at
org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
at
org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:344)
at
org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:272)
at
org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:81)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:215)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:279)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:98)
at
com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:91)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:162)
at
org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:326)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:227)
at
com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:170)
at
com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:822)
at
com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:719)
at
com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1013)
at
com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:225)
at
com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
at
com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
at
com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
at
com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
at
com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
at
com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
at
com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
at
com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
at java.lang.Thread.run(Thread.java:662)
--
Sebastian E. Ovide
13 years, 8 months
seam-faces 3.0.0.Final java.lang.NoClassDefFoundError: org/jboss/seam/exception/control/ExceptionToCatch
by Sebastian E. Ovide
after migrating to seam-faces 3.0.0.Final and to Glassfish 3.1 I can read
this exception from the glassfish console:
WARNING: StandardWrapperValve[FacesServlet]: PWC1406: Servlet.service() for
servlet FacesServlet threw exception
java.lang.NoClassDefFoundError:
org/jboss/seam/exception/control/ExceptionToCatch
at
org.jboss.seam.faces.exception.CatchExceptionHandler.handle(CatchExceptionHandler.java:53)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:119)
at
com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:410)
at
org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1534)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:343)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:215)
at
org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:61)
at
org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:108)
at
org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:137)
at
org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:81)
at
org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66)
at
org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:359)
at
org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:275)
at
org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
at
org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
at
org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:344)
at
org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:272)
at
org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:81)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:215)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:279)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:98)
at
com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:91)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:162)
at
org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:326)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:227)
at
com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:170)
at
com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:822)
at
com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:719)
at
com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1013)
at
com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:225)
at
com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
at
com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
at
com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
at
com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
at
com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
at
com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
at
com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
at
com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
at java.lang.Thread.run(Thread.java:662)
any ideas ?
--
Sebastian E. Ovide
13 years, 8 months