digging into swallowed exceptions in JSF
by Dan Allen
You all may enjoy my research of why JSF was swallowing an exception
in some cases, but not others (found while preparing the Seam
2.0.2.CR2 release).
http://jira.jboss.org/jira/browse/JBSEAM-2836
-Dan
--
Dan Allen
Software consultant | Author of Seam in Action
http://www.mojavelinux.com
http://manning.com/dallen
NOTE: While I make a strong effort to keep up with my email on a daily
basis, life and work come first and, at times, keep me away from my mail
for a while. If you contact me, then don't hear back for more than a week,
it is very likely that I am excessively backlogged or the message was
caught in the spam filters. Please don't hesitate to resend a message if
you feel that it did not reach my attention.
16 years, 8 months
Wrapping lines in PDF
by Sebastian Hennebrueder
Hello,
in the PDF a number of rows end in nowhere. I saw that fo is used to
generate the PDF. The following configuration in the fo.xsl would wrap
programlisting by the first space.
<xsl:param name="hyphenate.verbatim" select="0"></xsl:param>
<xsl:attribute-set name="monospace.verbatim.properties"
use-attribute-sets="verbatim.properties
monospace.properties">
<xsl:attribute name="wrap-option">wrap</xsl:attribute>
<xsl:attribute name="hyphenation-character">-</xsl:attribute>
</xsl:attribute-set>
--
Best Regards / Viele Grüße
Sebastian Hennebrueder
-----
http://www.laliluna.de
Laliluna.de, Berliner Strasse 22, 61118 Bad Vilbel, Germany
* Java Software Development, Support
* Tutorials for JSP, JavaServer Faces, Struts, Hibernate and EJB
* Seminars and education at reasonable prices
16 years, 8 months
Seam gen redesign
by Pete Muir
Max and I spent some time thinking about how to improve on the seam-
gen maintenance problem (2000 lines of ant is a bit nasty), and also
make it easier for JBoss Tools to consume the templates etc.
Feature Comparison
-------------------
Seam-gen JBoss
Tools Notes
---------
------------ -------
Ant controlled (seam-gen/build.xml) --------> Wizard
controlled Totally different system, probably not much
duplication
dev/prod/staging profile -------------------> dev profile
only Hard to do profiles in eclipse plugins - and not
that important, seam-gen build system is only a starting point, and a
projects build requirements quickly outgrow it
ftl and other templates -------------------->
templates We need to make all templates ftl
based - as otherwise inconsistent, and especially hard for multiple
consumers when we change a template from one to the other
project dependency info --------------------> project dependency
info Duplication!!! This is a big pain point atm
project structure --------------------------> different project
structure Not really an issue
generated build.xml ------------------------> generated
build.xml Max, does the build.xml generator in jboss
tools use the one from seam-gen, or build from scratch? Probably
should use the one from seam-gen
file copy ----------------------------------> file
copy In other words we overwrite rather than
merge descriptors
icefaces support ---------------------------> Not supported
Minor action items
-------------------
* Move all templates to .ftl
* Tidy up association handling
Major design changes proposed
------------------------------
* Move all templates and project dependency info into a JAR
- This jar is then published (e.g. to maven), and used by both
seam-gen and JBoss Tools
- The dependency info is specified using a maven POM, with
profiles used to "turn on" options like drools, jbpm etc.
- Hibernate Tools uses a classpath like system to load templates
so this is easy
- Extension points as necessary to allow e.g. icefaces to plugin
- Perhaps include a sample build.xml.ftl which can be used for
both JBoss Tools and seam-gen
- This remains part of the release cycle
* Migrate ant control to java control
- Extension points as necessary to allow e.g. icefaces to plugin
- This becomes a separate module that is released independently of
seam as needed
* Merge support for descriptors (both JBoss Tools and Seam-gen)
* Investigate whether we can utilise maven archetypes (to describe
meta data for projects) and consume in both JBoss Tools and seam-gen
(already offers dependency info, perhaps merge support, descriptor
location info)
- N.B. seam-gen would be more than just a maven archetype, but use
it as a meta model for the generated project
--
Pete Muir
http://www.seamframework.org
http://in.relation.to/Bloggers/Pete
16 years, 8 months
Facelets annotations, just an idea
by Dan Allen
This extension from JSF-Comp has Seam written all over it:
http://jsf-comp.sourceforge.net/components/facelets-deployment/index.html
"The facelets annotation project's goal is to relieve developers the
burden of maintaining taglib.xml files. Instead, the code with this
project allows developers to register validators, converters,
functions and components with the facelets compiler. It also supports
the registering of these components with the faces application."
Just an idea...
-Dan
--
Dan Allen
Software consultant | Author of Seam in Action
http://www.mojavelinux.com
http://manning.com/dallen
NOTE: While I make a strong effort to keep up with my email on a daily
basis, life and work come first and, at times, keep me away from my mail
for a while. If you contact me, then don't hear back for more than a week,
it is very likely that I am excessively backlogged or the message was
caught in the spam filters. Please don't hesitate to resend a message if
you feel that it did not reach my attention.
16 years, 8 months
User Management in seam-gen
by Dan Allen
I'm concerned that we have documented something that is not actually
part of Seam yet. According to this section of the documentation:
http://docs.jboss.com/seam/2.0.2.CR1/reference/en-US/html/security.html#d...
...there is a user management screen in seam-gen. However, I have yet
to see this screen when I use seam-gen and I am guessing that unless I
am missing something, it's because it doesn't exist. I think this
would be a great feature, but we need to make sure that it is deliver
if we say it is there.
Again, I like this screen, but one thing that concerns me is the
custom button. We should be sensitive to the fact that there are other
RichFaces themes and this button is not going to fit well in anything
but blueSky. I think we should make it a standard button like the rest
of the user interface unless it is dynamically generated.
-Dan
--
Dan Allen
Software consultant | Author of Seam in Action
http://www.mojavelinux.com
http://manning.com/dallen
NOTE: While I make a strong effort to keep up with my email on a daily
basis, life and work come first and, at times, keep me away from my mail
for a while. If you contact me, then don't hear back for more than a week,
it is very likely that I am excessively backlogged or the message was
caught in the spam filters. Please don't hesitate to resend a message if
you feel that it did not reach my attention.
16 years, 8 months
Excel support
by Nicklas Karlsson
Yep,
As Daniel mention, there has been some brainstorming around the project...
We were also thinking along the lines of the PDF support where there
are custom tags that
expose functionality of an underlying library and then the final
byte[] is hung in a DocumentStore etc.
I have good experiences with http://jexcelapi.sourceforge.net/ and it
is the most feature-complete and performant (more so than POI)
library that I'm aware of.
The basic usage could look like
<e:workbook value="#{personlist}" var="person">
<e:column>
<e:cell value="#{person.name}"/>
</e:column>
</e:workbook>
Where we could go with library default values, working like a
dataTable (UIData? Daniel is the tag-person here ;-))
More complex, optional cases could then look like
<e:workbook
protected="true"
<e:workbookSettings
arrayGrowSize="1000"
autoFilterDisabled="true"
cellValidationDisabled="true"
characterSet="1"
drawingsDisabled="true"
encoding="utf-8"
excelDisplayLanguage="fi"
excelRegionalSettings="fi"
formulaAdjust="true"
GCDisabled="true"
ignoreBlanks="false"
intialFileSize="100000"
locale="fi_fi"
mergedCellChecking="false"
namesDisabled="true"
propertySets="false"
rationalization="false"
supressWarnings="true"
temporaryFileDuringWriteDirectory="c:\\temp"
useTemporaryFileDuringWrite="true"/>
<e:sheetSettings
paperSize="a4"
orientation="landscape"
sheetName="data"/>
<e:column width="30">
<f:facet name="header">
<e:cell/>
</f:facet>
<e:cell
value="#{person.age}"
type="number"
formatMask="#00"
alignment="left"
verticalAlignment="bottom"
orientation="vertical"
indentation="5"
shrinkToFit="true"
wrap="true"
locked="true"
comment="No comment">
<e:background
color="black"
pattern="grey_25"/>
<e:border
type="bottom"
lineStyle="dotted"
color="brown"/>
<e:cellFeatures>
</e:cellFeatures>
<e:font
name="Times New Roman"
pointSize="12"
bold="true"
italic="true"
color="red"
struckout="false"
underlineStyle="single"
scriptStyle="superscript"/>
</e:cell>
</e:column>
</e:workbook>
Exposing pretty much everyting JExcelAPI has to offer. Cell definition
would also be cascading so you can modify it on workbook-level
and then override some attributes for specific columns.
Feedback is welcome!
Nik
16 years, 8 months
Excel implementation
by Nicklas Karlsson
The implementation of the the top level tag could then be something like
CellFormat[] cellformats = ; //parse tags for cell definitions etc
ByteArrayOutputStream bytestream = new ByteArrayOutputStream();
WritableWorkbook workbook = Workbook.createWorkbook(bytestream);
WritableSheet worksheet = workbook.createSheet("data", 0);
bytestream.toByteArray()
// pseudo code section
loop data rows i
loop data columns j
worksheet.addCell(ExcelFactory.getCell(i, j, celldata, cellformats[i]))
end loop
end loop
pretty much the same with bytestream.toByteArray() as is done in the
pdf UIDocument.encodeEnd
Could/should there be a src/xls/org/jboss/seam/xls/ui structure and if
so, what parts should be extraced to some common package?
The DocumentStore concept itself?
16 years, 8 months
Google Summer of Code
by Dan Allen
Guys,
I am taking a complete swing in the dark because I don't know much
about GSoC other than what I have read in articles, but is there any
interest in getting a Seam-based project proposed? I guess what I am
asking is if there is some task we can pawn off on some poor research
student? The main reason I am bringing this up is for exposure.
Besides, especially in the area of seam-gen and reverse engineering, I
know we can do a heck of a lot better. (and we are all soooo busy).
I'm only passing on the statement here, but someone high up made the
comment to me at the ETE conference when I mentioned I was working on
Seam in Action, "Hasn't Seam sort of lost its steam?" Yes, he is a bit
out of touch, but still, we have to keep pinging the world to remind
them we are still here and growing.
-Dan
--
Dan Allen
Software consultant | Author of Seam in Action
http://www.mojavelinux.com
http://manning.com/dallen
NOTE: While I make a strong effort to keep up with my email on a daily
basis, life and work come first and, at times, keep me away from my mail
for a while. If you contact me, then don't hear back for more than a week,
it is very likely that I am excessively backlogged or the message was
caught in the spam filters. Please don't hesitate to resend a message if
you feel that it did not reach my attention.
16 years, 8 months
iTunes gift card
by Shane Bryzak
My brother gave me a $15 iTunes gift card but it's only valid in the US
iTunes store - anyone use US iTunes that wants it? I'll send the code
to the first person that responds :)
16 years, 8 months
note about UserSearch component
by Dan Allen
@Name("org.jboss.seam.security.management.userSearch")
@Scope(SESSION)
@Synchronized
public class UserSearch implements Serializable
{
}
Session-scoped components are synchronized by default.
from Component.java
boolean hasAnnotation = getBeanClass().isAnnotationPresent(Synchronized.class);
synchronize = ( scope==SESSION ) || hasAnnotation;
--
Dan Allen
Software consultant | Author of Seam in Action
http://www.mojavelinux.com
http://manning.com/dallen
NOTE: While I make a strong effort to keep up with my email on a daily
basis, life and work come first and, at times, keep me away from my mail
for a while. If you contact me, then don't hear back for more than a week,
it is very likely that I am excessively backlogged or the message was
caught in the spam filters. Please don't hesitate to resend a message if
you feel that it did not reach my attention.
16 years, 8 months