I am attempting to deploy a Seam app that utilizes JBPM. I have a single page
definition file and a single process definition file. Both are located, for the
time being, at the root of my WAR file, and both are in my components.xml file
in the proper places (without slashes or anything).
When
Though this might be a long shot, it occurred to me that I might be using
s:selectItems incorrectly. In my case, when I do the following in my Facelet
as described above:
| select jsfc=h:selectOneMenu id=categoryDropdown
value=#{myAction.category}
| s:selectItems
From my application log:
| 15 Feb 2008 13:19:02,245: DEBUG org.hibernate.hql.ast.ErrorCounter -
throwQueryException() : no errors
| 15 Feb 2008 13:19:02,245: DEBUG org.hibernate.hql.ast.QueryTranslatorImpl -
HQL: from com.myApp.persistence.TechnicalCategory
| 15 Feb 2008 13:19:02,245:
I should also mention that my driver is weblogic.jdbc.oracle.OracleDriver.
Here also is some stuff in my WL server log. It means nothing to me, but it
may to you:
| Feb 15, 2008 1:08:11 PM EST Error JDBC TSP617758 AdminServer
[ACTIVE] ExecuteThread: '17' for queue:
So here is something interesting!
I added some more debug statements to my code and found this:
| 15 Feb 2008 15:39:19,847: DEBUG com.myapp.persistence.QueryServiceImpl -
Executed query
| 15 Feb 2008 15:39:19,847: DEBUG com.myapp.persistence.QueryServiceImpl -
Ending method getCategories
Using Seam 2.0 GA on WebLogic 9.2, I am trying to simply populate a dropdown
list with values from a database table. The code to do so is in a Seam-managed
persistence component and has been tested and found to work. My Facelet then
calls on this component to populate the dropdown. When I do
I very much want to do things the right way, and that means testing. Yet
with all the options out there (SeamTest, JSFUnit, Selenium) as well as all the
various categories of testing (unit, integration, acceptance, performance), I
am really confused as to which serves which purpose.
It seems
Here you go:
| ui:define name=mainFormContent
| h1spanSearch/span/h1
|
| label for=nameBox jsfc=h:outputLabel value=Name/
| input type=text jsfc=h:inputText id=nameBox
value=#{searchAction.name}/
| br/
| label for=numberBox jsfc=h:outputLabel
Naturally, the log got cut off, but these lines caught my eye:
| 04 Feb 2008 14:37:00,377: DEBUG org.ajax4jsf.application.AjaxViewHandler -
Create instance of Ajax V
| iewHandler
| 04 Feb 2008 14:37:00,457: DEBUG org.ajax4jsf.application.AjaxStateManager -
Can't restore view state
| :
I will try to write something up as soon as I can.
In the meantime, I am curious about an ancillary aspect of all this--the
testing. My Seam action component has a listener method that handles the
passing of the desired page number from the client to the search code, and this
method takes a
Well, I am not sure what to rip out. After all, this is the first and only
page in the application. Do you think this might be better on the RichFaces
forum?
Thanks.
Neil
View the original post :
http://www.jboss.com/index.html?module=bbop=viewtopicp=4126411#4126411
Reply to the post :
It turns out this whole issue might be a WebLogic thing actually:
http://dev2dev.bea.com/blog/neilsmithline/archive/2006/03/jsessionid_valu_1.html
Hopefully, you JBoss guys won't get in trouble for looking at a BEA link!
Check this out too:
| Parameter Name: CookieName
| Default Value:
Sorry, but I am not sure I understand your request. Do you mean my Facelet?
Or do you mean the debug output page? Or something else? Once I know exactly
what you want, I will be happy to provide it.
Thanks.
View the original post :
Thanks to everyone for their insight. I have got something that seems to be
working. I don't know if it is the most elegant code ever written, but I will
be happy to write up the general solution on SeamFramework.org. Just let me
know where, Pete.
For those who might be interested, let me
No error messages at all. I just fill out the form, press submit, wait a
little, and then the form comes back with the fields cleared. The only
difference from when I first try the page is, as I mentioned, the appending of
the jsessionid to the URL.
I wasn't sure if perhaps I had misused
The good news is this one should be easy.
I have finally developed the first page of my Seam-JPA/Hibernate application, a
search page. This page contains a typical form where the user fills out the
search parameters and presses Submit. The results are then presented in a
table just below the
Sorry...the subject was meant to be Need Form to Work Without Double Submit.
Thanks.
View the original post :
http://www.jboss.com/index.html?module=bbop=viewtopicp=4125730#4125730
Reply to the post :
http://www.jboss.com/index.html?module=bbop=postingmode=replyp=4125730
I've got the paging and sorting covered in a component that abstracts Hibernate
Search's ability to handle all that.
My first crack at this problem was to use two more Seam components: the first
is an action component to interact with the user and the second to serve as
my ExtendedDataModel
As I keep studying Pete's seamdiscs code, I feel less confident about how much
I can really use beyond concepts. I understand the seamdiscs example is meant
to highlight the Seam CRUD application framework, but as a result I think a lot
of the data model integration doesn't apply to my case.
So I have done some research, and I have found that it actually isn't the
rich:datascroller I should be focusing on but rather the rich:dataTable to
which it is bound. It appears to me I need to do two things.
First, I need to write my own DataModel. It seems I am supposed to use the
Thanks, Alexander. I actually caught that before. It is true that the
approach you directed me to isn't the same as writing my own component, but man
is it a lot of code!
Besides, even if I were to create my own DataModel, I am currently using the
@DataModel and @DataModelSelection
I prefer to handle all my pagination on the server with Hibernate, but I also
want to use the rich:datascroller component. My Seam component knows the
following information:
1) The total number of page results
2) The current page number of results
3) The desired number of results per page
4)
I appreciate that. I only asked here since Gavin wrote that class, and it is
outside Hibernate Search proper.
Thanks.
View the original post :
http://www.jboss.com/index.html?module=bbop=viewtopicp=4121869#4121869
Reply to the post :
OK, I will pack my things up and head back over there.
Thanks.
View the original post :
http://www.jboss.com/index.html?module=bbop=viewtopicp=4121883#4121883
Reply to the post :
http://www.jboss.com/index.html?module=bbop=postingmode=replyp=4121883
Incidentally, it looks also like the instance of FullTextHibernateSessionProxy
is what is returned from the call to em.getDelegate() when Hibernate Search is
enabled. Is this so? I see nothing in the documentation about this class, so
what purpose does it serve?
Thanks.
View the original
True enough. When combined with Seam, HS allows you to inject the
FullTextEntityManager directly.
However, what I am doing is still correct--at least theoretically. It is
basically what is found in the DVDStore example but with one catch. In that
case, the JPA EntityManager is injected by
I forgot to mention also that if you look at the top of the stack trace, all
the fun starts with the class
org.hibernate.search.jpa.impl.FullTextEntityManagerImpl. If that is the class
of object that is supposed to be injected with
| @In
| private FullTextEntityManager entityManager
|
First off, I am using JPA powered by Hibernate rather than Hibernate itself.
The following represents what I am doing:
| @In
| private EntityManager em;
| .
| .
| .
| fullTextEntityManager = Search.createFullTextEntityManager(em);
| .
| .
| .
| fullTextQuery =
I am using Hibernate Search in my Seam web application. All my unit tests and
integration tests (using SeamTest), which are quite rigorous, are passing with
flying colors. I should note that the tests are of two categories:
1) My use of the Hibernate Search libraries outside of any container
I built the Seam JPA example for WebLogic using the build script provided, and
I tried deploying jboss-seam-jpa.war to my WL 9.2 instance. I got the
following:
|
| An error occurred during activation of changes, please see the log for
details.
| Message icon - Error
I am attempting to deploy a Seam 2.0 application to WebLogic 9.2 and having a
heck of a time with it. At first, Hibernate couldn't find the datasource I set
up through the WL Admin Console in the JNDI tree. So I made some changes to my
WAR file and tried to redeploy. Then the Admin Console
I have seen this issue pop up in similar situations on the forum--server
restarts, etc. And in most cases, Pete has asked for an issue to be filed in
JIRA. For example, see http://jira.jboss.com/jira/browse/JBSEAM-1990. Do you
think the same issue is at play here?
If so, since the issue
So I made some changes to my WAR file:
Added weblogic.jar to my WAR and these properties to persistence.xml
property name=jndi.url value=t3://localhost:7001/
| property name=jndi.class value=weblogic.jndi.WLInitialContextFactory/
|
Changed the datasource in the Admin Console to the name
Those initial changes were based on this:
http://forum.hibernate.org/viewtopic.php?p=2215254sid=28f8e2bcf55c7278f196fbb17aa1bec5.
Granted, the WL version in that post was 8.1, and I am on 9.2. Still, I
figured why not give those a shot.
As for the Seam JPA example, I used it as a model for
My Seam-JPA application can't be deployed to WebLogic 9.2 because there is a
JNDI error when trying to locate the datasource. I have set up a datasource in
the Admin Console called java:/myWebAppDS. Then, in my persistence.xml I have
this:
| persistence-unit name=srmWebapp
Alas, I am developing my application on WebLogic 9.2, so I don't think JBossWS
is an option for me according to this:
http://jbws.dyndns.org/mediawiki/index.php?title=JBossWS
Looks like I might just have to settle for a hybrid solution. Seam for
publishing services and Spring Web Services for
No worries. It was a couple of things. First, I had failed to mark the
injected component with the appropriate out-jected scope. Second, in my test,
I forgot to carry the conversation ID along from FacesRequest to FacesRequest
as is done in the booking example.
Typical silly newbie growing
Chapter 20 in the Seam documentation is dedicated to exposing POJOs as web
services and integrating them into a conversational context. This should be
helpful to me when I find myself publishing services.
However, I also need to consume web services. This means, at least for me, the
I have a SearchAction class (ScopeType.CONVERSATION) which has its properties
bound to the user interface (for such things as name and key words to
search on) and passes these off to a class called Finder that actually does the
search and returns the results to SearchAction to pass back to the
I should mention that I also applied what I believe to be the correct entry for
this interaction in pages.xml. This has not helped either.
Again, I am seeking insight as to how a component injected into a
conversational component can maintain its state throughout the conversation
(i.e.
Thanks to your insight, Pete, and to the samples, things are going swimmingly.
One more question though...I forgot to mention another case in the scenario I
described--the case where no results are found for the search parameters
provided.
The method that performs the search when the user
I will take a look at those examples. Thanks again for all the guidance.
View the original post :
http://www.jboss.com/index.html?module=bbop=viewtopicp=4115778#4115778
Reply to the post :
http://www.jboss.com/index.html?module=bbop=postingmode=replyp=4115778
I am running a test of components using SeamTest and writing precisely the same
sort of test as in the documentation:
|
| new ComponentTest() {
|
| protected void testComponents() throws Exception
| {
| setValue(#{searchAction.name}, Benzoic);
|
The odd thing is that I am really not accessing the page context. In fact, I
am not doing anything. The line I showed above where I call setValue is the
only line in my test! Yet that is where the ELException arises.
Weird, huh?
By the way, nice to know someone else is working today.
Problem solved. I had a property annotated with
@DataModel(scope=ScopeType.PAGE). Once I remove that, it works.
This does beg some questions though. I am trying to figure out the right
context for a very common scenario:
1) User enters search criteria on a page and presses a button
2)
Problem solved. I think. And you will never guess in a million years what the
issue was.
When I started this thread, my setup was all wrong from the perspective of
SeamTest. I had an existing project, so seam-gen wasn't an option. Once I ran
into trouble though, I used it to show me what
Well, I have tried a bunch of things. I used seamgen to create a dummy project
which I then imported into IntelliJ. I ran the generated build script to run
an integration test, and of course it worked.
So then I used the information from that run as well as Pete's comments to make
a bunch
I hinted at this already, but I want to be clear about the structure of my
project. The overall structure of my project is a WAR file deployed to
WebLogic. In the WEB-INF/lib directory, along with all the third-party library
files like Seam, etc will be two JAR files of my creation--a
I rewrote my Ant script slightly to add all the libraries in the Seam 2.0
distribution to my classpath. Here is the revised Ant script:
| path id=seam.test.class.path.libs
| fileset dir=${seam-hibernate.lib.dir}
|
Ask and you shall receive. Here is the classpath:
| Executing 'C:\Program Files\Java\jdk1.5.0_12\jre\bin\java.exe' with
arguments:
| '-ea'
| '-classpath'
|
Since I have my SeamTest unit tests running smoothly, I assumed I had my
testing configuration correct. However, when I run the most basic integration
test just to see what happens, I get an exception.
Here first is my classpath in Ant:
| path id=seam.test.class.path.libs
| fileset
I should probably mention that I am running my test by compiling all my code
into a JAR file, which is included on the classpath of TestNG. This JAR has
seam.properties located in the META-INF directory. Is this OK for my test to
work?
If anyone has managed to get SeamTest to work for
I am attempting to use RichFaces and Seam to do something quite common. I have
a search page where I want to present the results of the search on the same
page as the search form itself. When the user first comes to the page, there is
nothing but the form of course. When the user hits the
So I commented everything out in my test and tried this:
| Assert.assertEquals(getValue(#{identity.loggedIn}), false);
|
And I get the same NPE for a component that is BUILT_IN. It seems to me that I
am either missing a JAR file in the classpath, or more likely I am missing a
I am integration testing my first component, and I am finding a
NullPointerException that I cannot find an explanation for.
Here is the class I am testing:
@Name(searchAction)
| public final class searchAction extends Object {
|private String name;
|@In
|private
I am not sure what sort of output you mean. I have checked the TestNG
documentation, and there does not seem to be any specialized logging besides
writing my own custom TestListenerAdapter.
I was actually just about to ask if there is a way to determine what Seam is
looking for from the
As Stewie on Family Guy might say, Victory is mine!
I discovered why the data was disappearing. As I said, the DBUnit Ant task was
populating the database as I wanted, but something was happening when I ran my
SeamTest, which retrieved that data through JPA. Well, the persistence unit
I'm still getting the same exception:
| java.lang.RuntimeException: org.dbunit.dataset.DataSetException:
java.net.MalformedURLException
| at
org.jboss.seam.mock.DBUnitSeamTest$DataSetOperation.init(DBUnitSeamTest.java:170)
| at
This has nothing to do with the exception at hand, but I saw Christian wrote
that certain methods in DBUnitSeamTest are tailored to HSQLDB. See here:
http://docs.jboss.com/seam/2.0.0.CR3/api/org/jboss/seam/mock/DBUnitSeamTest.html
However, I am using Oracle. Once I resolve this exception,
I was actually going to try that next, but I somehow managed to get the test to
work. Here is the classpath I got in my Ant script to get things to work:
| path id=seam.test.class.path.libs
| pathelement path=${seam-hibernate.lib.dir}/bootstrap /
| fileset
NOTE: This may be more appropriate for a different forum, but it seemed best to
start here.
I am using the DBUnit Ant task to do a clean insert of a seed file before
running a SeamTest unit test. I have verified that DBUnit properly performs
the insert I specify prior to the test. But for
For some reason, the Ant target didn't come through. Here it is again:
| target name=run-unit-tests depends=clean-test-output
| ant antfile=build-persistence-jar.xml target=jar-with-tests/
| dbunit driver=${database.driver.class}
| url=${database.url}
|
Actually, I did notice that in the wiki example. I gave DBUnitSeamTest a quick
shot because of my disappearing data situation doing things the conventional
way, but I kept getting a MalformedURLException wrapped in a DBUnit
DatasetException. I was probably doing something silly with the path
I have moved to CR3 and based on the Wiki example have reconfigured my
classpath to load libraries in a special order. Here is the classpath, which I
hope is self-explanatory:
| path id=seam.test.class.path.libs
| fileset dir=${seam-hibernate.lib.dir}/bootstrap /
| fileset
This lack of a guarantee is definitely troubling. My authenticate method is
fairly exotic I suppose. It actually sends a web service message to an
external web service that wraps authentication functionality. Essentially, if
the web service returns true, the user is authenticated.
However,
I have studied the forum, yet I am having trouble simply getting the most basic
test to work--a single TestNG unit test extending SeamTest with a single method
with Assert.assertTrue(true). That's it. No FacesContext simulation or
anything remotely complex. I haven't seen anything in the
I have studied the forum, yet I am having trouble simply getting the most basic
test to work--a single TestNG unit test extending SeamTest with a single method
with Assert.assertTrue(true). That's it. No FacesContext simulation or anything
remotely complex. I haven't seen anything in the
By the way, I am using Seam 2.0 CR 2 with TestNG 5.6 and Ant 1.7.
Thanks.
View the original post :
http://www.jboss.com/index.html?module=bbop=viewtopicp=4100883#4100883
Reply to the post :
http://www.jboss.com/index.html?module=bbop=postingmode=replyp=4100883
I have indeed confirmed that I have thirdparty-all.jar on my classpath and that
it does contain log4j within.
I have all the Seam JARs included with the CR2 distribution on my classpath.
Any other ideas?
Thanks.
View the original post :
So I completely purged my test method of all meaningful code. The only line in
the test method is this:
| Assert.assertTrue(true);
|
And then I got I got a completely strange error:
| java.lang.RuntimeException: Unable to create a KernelInitializer based on
the specified
Maybe the better question is which JARs are necessary for SeamTest to work. I
have included everything that comes with Seam CR2 as well as all the JSF and
Hibernate libraries.
Right now a mere empty test is failing.
Thanks.
View the original post :
I read in Michael Yuan's book that I need configuration files like
components.xml in the classpath. That could be an idea, but much of the stuff
in the book is outdated (through no fault of Michael's)--particularly in the
area of configuration. Right now I have no config files in my
Perhaps I should also mention that I am running a straight TestNG unit test
with the virtually empty test I mentioned above. There is no integration
with a simulated FacesContext or anything like that. The test runs fine when I
extend Object, but it bombs when I extend SeamTest.
Just to let
I am running TestNG 5.6 in Ant 1.7 and using SeamTest in Seam 2.0 CR 2. When I
run the test, I get this:
| java.lang.NoClassDefFoundError
| at org.apache.log4j.Logger.getLogger(Logger.java:104)
| at org.jboss.seam.log.Log4JProvider.init(Log4JProvider.java:31)
| at
I am currently at home, so I can't check this until I get to the office. But I
would think I must have log4j in the classpath already given that the offending
method call is at line 104 of Logger.java, which is included in log4j.
Besides, I am pretty sure I have thirdparty-all.jar on my
I was thinking the same thing. Just follow the Tomcat sample and pray it works!
Now this may be a semantic thing, but I always planned on a JPA based
deployment--whether I went with EJB3 or POJOs. The plan was to use a
persistence archive with Hibernate JPA hitting a datasource created on WL
I understand the time constraints. But just briefly then, can an EJB3
deployment work on WL 9.2? If so and if I use Seam 2.0 when it's ready, where
does the microcontainer fit in the deployment?
View the original post :
http://www.jboss.com/index.html?module=bbop=viewtopicp=4091350#4091350
Well, then I guess I can try to replicate the Tomcat examples as much as
possible and see what happens. Which are the Tomcat samples again? Also,
since Tomcat deployments are WAR files, should I deploy a WAR file to WL 9.2 as
well? If I deploy an EAR, do I simply model the Tomcat/EJB3 setup
Perhaps a better way to phrase the question is this:
If you were going to give an embedded EJB3 deployment of Seam on WL 9.2 a shot,
how would you go about it in terms of deployment type (WAR or EAR) and
packaging structure (where the libraries are).
View the original post :
I would like to deploy an EJB3 application to WebLogic 9.2. All the sample
applications I have seen entail deploying Seam POJOs to WL. I would like full
EJB3 capability in my application, so I have two questions:
1) Is this possible, or must I only rely on POJOs?
2) If it is possible, do I
I feel pretty strongly that a slick, AJAX-enabled sortable, pageable table is a
must for RF. And not just because that is precisely what I need! It is a
pretty compelling demand among clients, and it has become a fairly common idiom
because of the DataGrid and GridView in .Net. In fact, it
Thanks, Damian. I actually missed that. The demo does indeed demonstrate
sorting, but the sorting performance leaves a lot to be desired. Also, I know
my clients will be demanding both sorting and paging from their tables, so the
table at this stage is still insufficient for me.
I figure
I actually did see that RF table component. It looks nice, but sorting by
column headers is a must for my clients. Hence the look into IF.
I noticed the Seam 2.0 documentation has a chapter devoted to GWT integration.
How does that mesh with gwt4jsf?
View the original post :
The gwt4jsf certainly sounds compelling. I will definitely give it a look.
According to the esteemed Mr. King, Trinidad and RichFaces can already
co-exist, but we've got some ideas for making the experience of using them
together even better.
Trinidad already has a sortable, pageable
I am starting to build an application and am reviewing several technologies.
Seam is ideal for what I am doing, and I give credit to Gavin and his team.
But I am very wary about picking one particular JSF component technology. It
seems like the leaders like ICEfaces and RichFaces have some
Thanks, Pete. Your comments echoed the sentiments I gleaned from both the
ICEfaces and Seam forums as well. Essentially, ICEfaces doesn't appear to play
terribly nice with others. That is too bad since ICEfaces has some cool
components that RF seems to lack like a slick sortable, pageable
I have a very common business process I want to model:
| Sales User searches for a customer
| Sales User selects a customer from search results and comes to customer
details
| Sales User hits a Place Order button
| Sales User goes through all the machinations of creating an order
I am building a Seam app using IntelliJ rather than JBoss IDE. As I generate
different XML files (e.g. components, pages, jbpm, etc), I would like the tag
completion and validation features so I can know at compile-time if I have
violated anything.
Are there DTDs or schemas for the Seam XML
Ahhh...I was looking online and didn't look within the distribution. My bad.
Thanks.
P.S. Incidentally, Christian, nice job (with Gavin) on Java Persistence with
Hibernate. It has been very helpful.
View the original post :
I think Gavin mentioned that Seam 2.0 will work on WLS 9.2. This is great news
since that is the target platform I have been dealt.
Still, given Seam's upgrade to JSF 1.2, does WLS 9.2 need to be altered by
upgrading it to support JSF 1.2 as is the case with JBoss 4.0.5? If so, how is
this
I've been studying Seam as I prepare to begin development of a JSF/Hibernate
JPA solution to be deployed to WebLogic 9.2 in production. I have to admit
being intrigued by the embeddable EJB3 container. It seems almost too good to
be true. All the joys of EJB 3 without the need for a Java EE
Believe me, it it were up to me, I would love to run my app on JBoss.
Unfortunately, the platform of choice for my client is WebLogic--and old-school
WebLogic at that. So I have no recourse.
Given that constraint though, I have to admit it is really cool that I can
deploy an EJB3 app to
Your approach is certainly viable and pretty simple, and it has occurred to me
as a possible solution. Of course, I would argue a lot of the solutions
provided by Seam could be accomplished through clever persistence mechanisms as
well.
My question therefore was meant to address the
I am writing an application where a user might be in the midst of a
conversation and then may need to stop that one and jump to another page to
initiate a new one. Upon completing that new conversation, the user could then
go to a list of unfinished conversations and complete them.
As a
Reading Chapter 6 of the documentation now. Thanks, Gavin.
How could I access the conversationList object in code? This would be useful
for me so that if the user logs off, then I could persist the data related to
the conversations and then retrieve later at next logon so the user could see
I am getting set to begin development of an application to be deployed to
WebLogic 9.2. I intend to use Facelets/JSF and Seam in this application. Is
it possible for me to use the EJB 3 container for this application in this
environment? In a production deployment?
Thanks.
View the
Christian, I will check out the reference documentation to learn more about the
application of Seam interceptors to regular JavaBean components.
Gavin, my client here has an enterprise authentication web service that I am
hoping to leverage to facilitate authentication into the application I
There is some major momentum here at my client site about Adobe Flex as a view
technology. As for me, I have been just as impressed as everyone else with all
the cool stuff Flex does on the front end, but I find my own enthusiasm
tempered by all the usual caveats: proprietary technology,
I will definitely look into Seam Remoting. But I am curious why that is
necessary. I know next to nothing about Flex, but I understand there are Java
objects, essentially DTO's, that are mapped to ActionScript objects for display
in Flex. Why can't these be conventional Seam-managed POJO's?
Thanks, Gavin. If I may ask some follow-ups on those points:
1) Aren't Seam interceptors only relevant to EJB 3? It is my understanding
that interceptors aren't available to POJO's except through AOP constructs.
2) I definitely anticipate needing support for EJB 2 integration in the future
1 - 100 of 101 matches
Mail list logo