Suggested Migration Path (BC4J/Struts - ?)

We built a BC4J/Struts apps a couple years back closely modeled after the BC4J ToyStore. It has been quite successful for us. However, I'm feeling like its technology stack is a bit dated, and would like some suggestions on bringing it more current.
BC4J (ADF) has been pretty solid for us, so I'm thinking of sticking with that instead of considering something else (Toplink, Hibernate, JPA, ...).
It would be cool to hear from others who were/are in a similar situation, and what they decided to do (tips, tricks, lessons learning from the trenches, ...). Thank you.
- Matt

I've worked in situations like this.
Personally, I think that if ADF BC/BC4J is working for you, there's no need whatsoever to migrate away from it. I imagine some might disagree with me on this, though.
The logical successor to Struts is JSF--since you're working in ADF, you'd probably want to use the ADF Faces components. Here, so far as I can tell, is the deal:
1) The UIX -> Faces migration utility is pretty smooth, unless you made heavy use of .uit templates. There's no equivalent in Faces, so you'll have to drop what was previously template code into place on your individual faces pages.
2) Moving from Struts to Faces...well, it depends on how heavily you used Struts, beyond the declarative bit. The declarative part is pretty easy to duplicate, but migrating controller code you've written in Struts over to Faces is manual, and in my experience not always 100% smooth. There isn't, for example, a clear action/page separation, so you'll need to find something to do with code you had written in Struts Actions and DataActions.
Desppite these hurdles, I'd still recommend making the switch--the ADF Faces components are in many ways a big improvement over UIX components.

Similar Messages

  • Suggested migration path for 10G rel 1 (90400) installation to 10.1.2.0.2?

    We are a heavy forms/reports shop. We have just gotten done installing 10G Rel 1 (9.0.4.0.0), and now that the latest version of the App Server has been released, I'm wondering what the suggested Migration Path should be? And whether there are any "must have" features that will make an appreciable difference in forms/reports. Or, should we just install the latest patchset for our 904 installation and be done with it?
    Thanks in advance.
    Phil McDermott

    Hmm... well, I'm going to be testing the forms/reports features of 10.1.2.0.2 just as soon as I get time, but what I'm hoping for most is that forms will work with SSO through the webcache. There is a bug in 9.0.4 that I'm aware of where SSO fails while working through the webcache. Oracle said they were working on the issue...
    ...anyone here know if Oracle fixed that bug? It may be a while before I'll have the time to play with 10.1.2.0.2.

  • Polling in BC4J Struts

    Hi folks,
    How would I achieve a polling functionality? One of our applications is setup with the 10gR2 version which comes with BC4J and Struts(Struts was a personal choice). I understand we have an af:poll tag with jsf which helps us to achieve the polling functionality. My query is how would I go about doing the same thing through Struts and BC4j. We don't have JSF, so its kind of tricky.
    My actual requirement is as follows:-
    I basically need to call an oracle report from java. I do this by having a custom implementation of the rwservlet. The oracle report generates a PDF file locally. Which I then need to store on my Database as a BLOB.
    I know how to call the report.
    I know where the pdf is located.
    I know how to store and retrieve the pdf from the DB through Struts.
    My only issues is in instructing my application from the report side to pick up the pdf file when the report is complete. I was thinking in these lines:-
    Rather than passing the instruction from the report side,in my struts action class i would set up some polling mechanism(which i don't know how to) that would tell me to look for the report in 2 minutes(which is how long the report takes to be generated), then pick it up and store it onto the DB.
    Since i "lose control" of the handle after redirecting to a different servlet for the report call, I don't see another alternative other than polling.
    Is there an alternative approach i can adopt to achieve the above functionality?
    If not, is it possible to poll through BC4J/Struts (as against ADF/JSF)?
    If not, please help :) .
    Cheers,
    K

    There is another danger related to this security hole:
    Struts suggests to locate JSPs below the WEB-INF directory to protect them from direct access. A JSP located here cannot be accessed directly but only using the appropriate action.
    One common approach implement security in a struts framework is to perform the required checks in actions. A user not logged in might for example been forwarded to the login screen instead of the requested page.
    If an Application relies on this fact and assumes that it is not possible to call a JSP located in WEB-INF without using the appropriate actions, this bug here opens another hole:
    The "currentPath" Parameter allows a user to call any JSP on your Web-Server! Simply modify the URL to look like this:
    navigate.do?amId=...&jboViewObject=...&currentPath=WEB-INF\path\to\any\page.jsp
    and you are in!
    Frank Brandstetter

  • BC4J/Struts Integration classes

    Does anyone know of any documentation on the BC4J classes that are used in Jdeveloper for struts integration?
    I have access to the source that came packaged in jdeveloper but I still have questions about the classes BC4JActionMapping,BC4JRequestProcessor,BC4JActionForm,BC4JUtils,BC4JContext, and HTTPContainer.
    One of my initial questions is whether I should specify the view object name I'm using in an action in my struts-config.xml file as I do with the application module? Also, when I do this how do I programmatically access it.
    I'm also interested in how the BC4J Client Data Model ".cpx" is used and if this needs to be packaged when deploying a bc4j/struts web application.
    The postings at Re: re:Using Struts without Datatags <jbo:xxx> by Steven Muench were terrific. A great start for understanding the integration of the two technologies. I would just like more detail on how/why bc4j leverages struts extension points.
    Thanks in advance!

    part 2 of posting:
    <action path="/navigateEmpView1" parameter="jboEvent" type="oracle.jbo.html.struts11.actions.NavigationAction">
    <set-property property="viewobject" value="EmpView1"/>
    <set-property property="application" value="Mypackage1Module"/>
    <set-property property="releasemode" value="Stateful"/>
    </action>
    Since NavigationAction is a Struts DispatchAction (instead of calling the execute method on the action, the method name to execute is passed using a request parameter), you will need to specify the event name on the request with the URL:
    /nextEmpView1.do?jboEvent=next
    To understand how this work, you need to look at how the BC4JContext is initialized:
    The following code is extracted from BC4JrequestProcessor:
    BC4JContext context = (BC4JContext)request.getAttribute(BC4JContext.ContextAttrName);
    // Instantiate the context and save it on the request
    if (context == null)
    context = new BC4JContext();
    request.setAttribute(BC4JContext.ContextAttrName, context);
    if (initPageFromPath(bc4jMapping, request, response))
    // First initialize context with the existing mapping values
    bc4jMapping.initializeContext(request, response, context);
    // Then use request para[i]Long postings are being truncated to ~1 kB at this time.

  • 11gR2 RAC stability and migration path

    We are preparing to go from a 10g Data Guard environment (1 primary and 1 physical standby) to an 11g RAC cluster on Sun M5000s (Data Guard will not be part of the final configuration). We have heard that 11gR2 RAC is not yet mature enough so we are considering going to 11gR1. I'm curious what the general consensus is regarding the stability of 11gR2 RAC.
    Also wondering what the best migration path would be. We are considering upgrading the 10g Data Guard databases to 11g and then creating a RAC physical standby database on the 11g cluster for the primary database on the old server. The migration to the new RAC cluster will consist of a failover to the new 11g RAC database and will involve minimal downtime. The 10g Data Guard databases and servers will then be decommissioned.
    Thoughts?

    You will be surprised if I said Oracle RAC11gR2 seems to be a new version NOT a new realease of Oracle RAC11gR1.
    Many new features, surprises, bugs, yes bugs....
    I suggest to directly address to Oracle itself , to your support at Oracle , as it seems to be a production DB. DOnt take the risk to decide from this forum , ask oracle experts at your support!
    Good luck

  • Is there a Migration Path from EP 5.0 to EP 7.0?

    Hi,
    I´m checking if there is a Migration Path from EP 5.0 to EP 7.0, has some one done this or know if this is Posible or if we need to go from 5.0 to 6.0 and then to 7.0?
    Thanx in Advanced!
    Kind Regards.
    Gerardo J

    Hi Gerardo Jiménez ,
    we need to go from 5.0 to 6.0 and then to 7.0(Migration path to be followed)
    The following websites give u detailed procedure & order of migration :
    How to Migrate from SAP Enterprise Portal 5.0 SP6 to SAP Netweaver '04
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/08279e8d-0701-0010-6d9a-8c1a790eb3b8
    How to Migrate from SAP Enterprise Portal 6.0 SP2 to SAP Netweaver '04
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/778ac2ee-0901-0010-61a9-a2e174996bd7
    Pls give u'r mai ID so that I can forward some docs.....
    cheers!
    gyanaraj
    ****Pls reward points if u find this helpful

  • Display the id of new Record in the browse page of BC4J Struts App

    I am working on an application using BC4J Struts with backbone on Oracle 8i.I am using DBSequence Type for my Employee ID.Since I am using this Id as search criteria for employee, I want to show Employee Id after insertion of new Employee.How can I display this ID to the user after insertion of new employee...

    Hi and welcome,
    please find a technical forum that matches to your question. Certification is the wrong forum.
    Mod: I'm locking this OT thread.

  • Forms 6i to Forms 11g - Migration path

    Have a customer who is currently using forms 6i and DB 9.X and is willing to migrate to Forms 11g and DB12g.
        Questions
            a) Does anyone know the migration path that should be used?
            b) As far as my understanding it should do both upgrades (forms and DB) at the same time as forms 6i is not certified with DB 12g and Forms 11g is not certified with DB 9.X right?
            c) Any project to use as reference?
            d) Any re-usable?
    Regards,
    Mariano

    Is this an EBS installation? If yes, please note that Developer 11g is not certified with R12 and you will need to use 10g instead.
    Using the OracleAS 10.1.2 Forms and Reports Builders with Oracle Applications Release 12 (Doc ID 444248.1)
    How To Bring Up 10G Forms Builder In R12 Environment? (Doc ID 579318.1)
    How To Upgrade 11i Custom Forms To R12 (Doc ID 563258.1)
    Accessing Custom Forms After Upgrading From To R12. (Doc ID 451934.1)
    Thanks,
    Hussein

  • New Clean Mac - Best Migration Path?

    I currently have a iMac G5 running Tiger and iLife 06 and have just recieved a new iMac with Leopard pre-installed and was looking for some advice in the best migration path.
    I would like to know wether people recommend just using the Migration Assistant to get everything across or should I start afresh and copy across specific photos, music, mail files etc?
    The question stems from the fact that the G5 has had a couple of upgrades in its time and I look at things such as the iphoto library files and they seem to be mutiple libraries (ie iphoto library, iphoto 6 library) and other duplicate files. So not sure if MA will sort and clean these out or will copy all across?
    Any thoughts would be apreciated........thanks Daniel

    Hello Daniel,
    Very similar issues here. Just upgraded from a G4 to an intel 2.4G. I cloned the G4 onto an external. Set up the new iMac. Connected to the external and ported across only those files I wanted or needed. Now have a clean iMac with no clutter or unwanted junk on it. Double checked that everything was in order before wiping the external and cloning again.
    Hang on to the G5 - Just in case you missed something. A flash drive or CD will resolve any issues.
    Regards
    Ian

  • Link for BC4J Struts-JSP and Tiles

    Hi,
    I have a JSP-Struts application. By the default generation, JDeveloper build a main.html Page. This page have many Frames and one Frame is "navFrame". On this frame I have a link for a JSP Page : Browse. The call is OK. No Problems.
    No I have another Page with Tiles :
    <template:insert page="IMDLayout.jsp" flush="true">
    <template:put name="title" value="Invoices Interface" />
    <template:put name="header" value="/tiles/common/header.jsp" />
    <template:put name="footer" value="/tiles/common/footer.jsp" />
    <template:put name="menu" value="/tiles/common/menu.jsp" />
    <template:put name="body" value="VInvoiceUsersView1_Browse.do" />
    </template:insert>
    The "body" Tiles call the same JSP Page as the link on the "navFrame", but now I have the following error :
    [ServletException in:VInvoiceUsersView1_Browse.do] Response has already been committed'
    Why ?
    Please help me, I need a solution. Does somebody use BC4J/Struts/Tiles ? Any Experience ? Problem ?
    Thanks
    Yves

    Repost

  • WebToGo BC4J + Struts + UIX application

    Is there any possibility to write a complete BC4J + Struts + UIX web application to run in the Oracle Lite platform??
    The documentation says about implementing a Servlet, but is it possible to install the .jar files of the struts & uix frameworks and register the *.do & *.uix extensions? What is the specification of the HttpServlet to be implemented?
    What about performance? Could this combination run in a WinXP PIV offline Laptop with reasonable performance?
    Where can I find this kind of information??
    Thanks
    Eduardo

    UIX is not supported in 5.0.2.x release. The next release (10g) will have complete UIX support. Beta release of 10g is already out in case you are interested in trying UIX with it.
    For BC4J refer to 'Chapter 6 BC4J Tutorial' of 'Oracle9i Lite Developer’s Guide'
    Limited support for Struts is there in 5.0.2.10.0 release. If you have the handler for .do extension files then you can use following:
    You can add mime handler to Mobile Server for .do extension by using a ini file. Copy following lines in a file called addmime.ini
    [DATABASE]
    TYPE=ORACLE
    [MIMETYPES]
    NAME = do
    VALUE=text/html
    PLUGIN=<handler class name>
    and run this ini file as following
    wsh -c addmime.ini mobileadmin/[email protected]

  • BC4J/Struts NavigationAction Functionality Request

    Jdev team,
    Has there been any thought on on extending the functionality in the NavigationAction class (and related BC4J/struts classes) to support navigating through 2 viewobjects set up in a master/detail relationship.
    The current implementation only supports mapping one view object in the struts action mapping which then limits the NavigationAction class to support navigating on only one viewobject.
    We have worked out a way to extend the BC4JActionMapping/BC4JContext to give us this functionality but we needed to overwrite some of the BC4JRequestProcessor/NavigationAction code to support this functionality.
    I think this type of functionality could be useful for other BC4J/Struts developers. BTW ... I understand that there are jbo tags that support this type of functionality but we have decided to use only JSTL/Struts tags.
    Thank you!
    -Mark

    Could you send us the errors that you are getting?
    Thanks,
    Jeanne

  • Bc4j, struts and query form (where)

    I have a query form on 1 table created by the wizards (bc4j - struts).
    For ex. in the name field I can insert 'Dimi' and the query form will find my record.
    But when somebody inserts 'dimi' (not initcap), he doesn't find my record.
    How can I adapt the default where clause in the query like eg. WHERE UPPER(FIRSTNAME)=document.form.field.toUpperCase(); ??
    In the next release this should be more simple!

    You can call setUpperColumns(true) on any instance of your view criteria row that you want to apply this UPPER() function to.
    Do you have a functional index at the database level on the UPPER(FIRSTNAME) function?
    If not, the query will do a full table scan with the UPPER(FIRSTNAME) in there.

  • Final Cut Studio 2 Migration path from Final Cut Express

    I'm currently using FCE HD 3.5, which I upgraded from FCE version 1.0
    I understand that no migration path exists from Final Cut Express to Final Cut Studio 2.
    However I have seen on ebay someone selling an upgrade to Final Cut Pro 5 HD from Final Cut express.
    I was wondering.... if I got this then could I then get a Final Cut Studio 2 Upgrade from FCP 5 HD?
    Does anyone see any problems with doing this? It seems to be a way to save money.
    Thanks,
    Steve.

    And it's well worth it. you can recoup a little of
    your cost by uninstalling fce and selling it.
    What's required in order to sell it? Can the registration be transferred to a new owner?

  • Migration Path from v2008.3 to v9.3.2

    Is there a migration path from v2008.3 to v9.3.2?
    Our v2008.3 environment is on a Windows 2003 server, therefore we cannot do an in-place upgrade to v9.3.2 (on Windows 2008R2).  CatalogDeployer does not work between v2008.3 and v9.3.2.
    Any ideas on how to move the services from one environment to another?
    Please help!

    We were on 2008.3 and then went to 9.1 SP2.  The upgrade meant we had to install the last service pack for 2008 and then install to 9.1 and then install the SP2 pack.  This change fro 2008.3 to 9.1 SP2 was a big pain for us on the Reporting side.  The MyServices and ServiceDesigner pieces had little problems.  This was an upgrade from Win2003 w/ SQL 2005 to Win2003 w/SQL 2008.  We've been running 9.1 SP2 on SQL2008 for a year now with no problems.
    We are now upgrading to 9.3.2 and are just going to run the 9.3.2 installer.  We will have new servers put in place with Win 2008R2 and on the database side have just done an inplace update from SQL 2008 to SQL 2008 R2.  This means that currently we are running 9.1 SP2 on SQL 2008 R2 in production.  We run a very high volume for RequestCenter so the setup works fine for us in this topology.  Going to Win2008 we are going to copy the database tables and run an in-place upgrade on the newly built Win2008 app server. 
    As for CatalogDeployer, we kept the old environment and the new environment around while testing the upgrade.  This meant we could make changes to Prod using the old environment and then once production was upgraded, we deleted the old environment.

Maybe you are looking for