 
                                        
                                
                         
                        
                                
                                
                                        
                                                
                                        
                                        
                                        Seam 2.2 migration to Seam 3
                                
                                
                                
                                    
                                        by Jon Da Vault
                                    
                                
                                
                                        Hello list members, 
Earlier today I posed a couple questions that did receive one response. The response has spawned a few more of my own questions and I have included the response in my conversation/further questions below. The original question is in red, and the response is also called-out and in red. The continuation question is in green. There are a couple new questions posed after the continued (green and red) question portion. Thanks for your help! 
1) The customer makes extensive use of Seam 2 remoting for their banking security application. Is there an equivalent in CDI (Weld) that will allow them to continue using remoting? If not, what alternatives do we offer in it's place? 
Mailing List Response: You can take a look at Errai, or simply use JAX-RS. 
Q: Seam 3 appears to have it's own remoting functionality available much like Seam 2. URL: http://seamframework.org/Seam3/RemotingModule 
As you'll note, there is a large disclaimer stating that active development for the project is halted and that the project is also deprecated. However, I feel that if the customer moves from Seam 2 remoting to Seam 3 remoting they will incur a smaller amount of work than if they were to consider adopting a new technology such as Errai or JAX-RS as you've suggested as best cases. While they are interested in adopting a better or more appropriate technology for their application, they still want to rapidly make the move to Seam 3/Solder/CDI/Weld in the meantime and I think this sets them up nicely for migrating the rest of the technologies over. What the customer is extremely interested in knowing is if these technologies now sitting as-is (3.1 Snapshot I believe) can be said to be categorically stable and functional currently for this sort of temporary use case with full knowledge they aren't supported moving forward? If so, are there any migration documents available? If no migration documents are available, do you have anywhere you can point me in order to get a head start on creating one myself for our client? Do you agree with this short-term-win approach? 
2) The customer currently uses Seam-managed Hibernate Sessions: he guesses they are not supported in CDI and wishes to know what is the best way to go moving forward? For example, something that is more conforming to JPA2 was mentioned. 
Mailing List Response : Moving to a more standard JPA environment would be best 
Q: Here again, there seems to be a Seam 3 persistence module available as before and I wonder if the customer could utilize this in the short term while preparing for an adoption of a new persistence technology lsuch as, say, just Hibernate? The URL I'm referencing is: http://seamframework.org/Seam3/PersistenceModule 
3) Given that components.xml is a large part of their implementation in Seam2, how can we break it up to conform with CDI/Weld/Seam3? 
Mailing List Response: All depends on what is in their components.xml, there's no simple answer here. 
Q: I agree with this response. I do, however, have a snapshot of the components.xml and I know that it needs to be broken up into a few different places. Does anyone have experience in doing this? Please reply and I will send you the components.xml document if you'd like to assist in helping me to map the pieces to the appropriate places. If there's sufficient documentation online, as always, please direct me to it. 
Lastly, if you're not tired of reading my questions yet there are a couple new ones below: 
First new question: "There used to be a class in Seam 2 called org.jboss.seam.faces.Redirect. We use this a few times to force a redirect in different cases. 
for example: 
1. When user enters a valid URL but is not yet logged on; view is captured and user returned to it after successful logon. 
2. When we detect that a user is no longer logged on; we redirect to a “Logon expired page” 
So, the question is: What do I replace this with? I looked in Seam 3 but it doesn’t appear to have been implemented (at least not in the seam-faces jar)." 
Second new question: Regarding their current usage of Seam 2 "We use the class org.jboss.seam.async.Dispatcher to create long running threads in the container. Can you tell me what I should use instead?" 
Again, if there are any documents or web sites that deal with these questions specifically regarding migration I would greatly appreciate having them sent to me. 
Thank You, 
Jon Da Vault 
Consultant 
206.369.2304 
                                
                         
                        
                                
                                11 years, 7 months
                        
                        
                 
         
 
        
            
        
        
        
                
                        
                                
                                 
                                        
                                
                         
                        
                                
                                
                                        
                                                
                                        
                                        
                                        Seam Migration Questions
                                
                                
                                
                                    
                                        by jdavault@redhat.com
                                    
                                
                                
                                        Hello Seam-Forums, Seam-Issues, and Seam-Dev,
I am working with a customer who is migrating from Seam 2.2 to Seam 3, 
JSF 1.2 to 2.0, RichFaces 3.3 to 4.0, and also will be using CDI (Weld) 
moving forward.
I haven't found any specific migration documents that directly address 
the Seam migration, but I have found a lot of discussions about this 
migration being a difficult one and comments that a migration strategy 
document needs to exist for this.
Here are the important questions I am looking to answer for our customer 
that I cannot currently answer myself:
1) If you navigate to this web URL: 
http://seamframework.org/Seam3/Solder, you'll notice that Red Hat states 
active development has stopped for this project and been moved to Apache 
Deltaspike. The customer is concerned that if they upgrade to Seam 
3/Solder now, they will have to upgrade again shortly thereafter to 
something else due to this change. Can we guarantee that we will support 
their upgrade moving forward? If not, what is or what will be the 
alternative technologies in its stead?
2) The customer makes extensive use of Seam 2 remoting for their banking 
security application. Is there an equivalent in CDI (Weld) that will 
allow them to continue using remoting? If not, what alternatives do we 
offer in it's place?
3) The customer has noted that Seam3 doesn't make use of components.xml 
which they currently use in Seam2. Where does this code get ported to in 
Seam3?
4) The customer currently uses Seam-managed Hibernate Sessions: he 
guesses they are not supported in CDI and wishes to know what is the 
best way to go moving forward? For example, something that is more 
conforming to JPA2 was mentioned.
I have snapshots of the current configurations for components.xml, 
pages.xml, and the current logging configuration. Please let me know if 
providing any of these would be useful to help answer the questions.
Any help is appreciated.
Regards,
Jon DaVault
Consultant
206.369.2304
                                
                         
                        
                                
                                11 years, 7 months