MDA (Model Driven Architecture) Discussion

This is a topic that's been rearing its ugly head recently, and since this is the new home of ALT ...
What do people think about MDA? I heard a developer the other day claim it was "the only way software engineering can mature as a branch of traditional engineering". Basically, this is the way to mass produce consistent (high) quality software. I think this is crap, but there you go ...
The problems I have with MDA are:
1. Are diagrams really the best representation of logic?
2. Those people that claim MDA is a "silver bullet".
3. The idea that an "architect" (i.e. probably me or you) will do the initial design and generate the framework, then any monkey with a keyboard can do the rest.
Anyone got any thoughts on the matter? Any first hand experiences?

I agree with you to the extent that I dont believe there to be one single methodology which can guarantee anything - all methodologies are afterall only as good as the people implementing them.
In response to
1) I would say that diagramming allows us to communicate the abstract ideas which form the basis of the early design of a system, and provides an excellent mechanism for charting, and justifying, changes in design. I would ask, what would you have in the place of diagrammatic models? I've worked on a few projects where the only design documentation was huge reams of narrative, extremely difficult to work from and maintain.
2) Nothing is a magic bullet to producing robust, maintainable software (unless its test-driven development...), but models help us to share a common representational language for complex problems.
3) I dont think thats the point - the best architects leave a great leeway to the individual developer in terms of implementation of the model (conversely, or course, $hit architects dont, but then, any project is ohly as good as its team members), and work closely during the development, so that the design model is not seen as something which is immutable, but is the reference point for kicking off development, and will undergo change as you work through iterations.
Personally, having worked on projects with modelling, and those without, I'd rather work on those where there is extensive modelling going on.
Just my sixpenn'orth...

Similar Messages

  • Comparing ABAP development process with Model Driven Architecture concept

    My Background
    I am a postgraduate student writing a Masters Degree Dissertation titled “An Investigation into how compatible ERP Development Process is with Model Driven Development Philosophy: A SAP R/3 Case Study”.
    The aim of this project is to compare ERP system development process with Model Driven Development (MDD) and to identify whether and how they can be used together. Model Driven Architecture (MDA) is Object Management Group’s (OMG) flavour of the MDD philosophy and is the paradigm that will be used here.
    I have chosen SAP R/3 as my case study in order to narrow the research and want to explore the development processes/cycle involved in using ABAP/4 to reconfigure/customize SAP R/3 system during implementation.
    An overview of the MDA concept according to OMG is given below. Following this, I’ve provided some questions that are open to discussions.
    Overview of the MDA Concept
    The Model Driven Architecture (MDA) is an approach to software systems development that separates the specification of system functionality from the specification of the implementation of the functionality on a specific technology platform. The MDA concept provides an open, vendor-neutral approach to system interoperability.
    A recent study by the Middleware Company summarizes MDA paradigm as a development process that makes use of the following steps:
    1.     Secure business requirements for an application.
    2.     Develop UML diagrams for the domain model, independent of any particular technology (J2EE, Microsoft .NET, CORBA, etc). This UML model represents the core business services and components. This UML model is called Platform Independent Model (PIM) because it is completely technology-independent and will be the same regardless of whether you decided to use J2EE or .NET. You develop this UML model using UML modelling capabilities of an MDA-specific modelling tool.
    3.     Build UML diagrams for the application, specific to a particular technology (J2EE, for example). This UML model will have design patterns. This UML model is called Platform Specific Model (PSM). You can build this manually, or you can generate much of it using an MDA tool and hand-tune only pieces of it that require customisation.
    4.     Finally, generate the application code using an MDA tool. That is to say, instead of writing the application by hand based on the UML model, you generate the majority of it from the UML diagrams.
    To develop an application using MDA, it is necessary to first build a PIM of the application, then transform this, using a standardised mapping into a PSM, and, finally, map the latter into the application code.
    A mapping is a set of rules and techniques used to modify one model in order to get another model. In MDA, mappings are used for transforming:
    1)     PIM to PIM. This transformation is used when models are enhanced, filtered or specialized during the development lifecycle without needing any platform dependent information. One of the most obvious mappings is the analysis to design models transformation. PIM to PIM mappings, are generally related to model refinement.
    2)     PIM to PSM. This transformation is used when the PIM is sufficiently refined to be projected to the execution infrastructure. The projection is based on the platform characteristics. Describing these characteristics should be done using UML description. Going from a logical component model to a commercial existing component model is a kind of PIM to PSM mapping.
    3)     PSM to PSM. This transformation is needed for component realization and deployment. PSM to PSM mapping are generally related to platform dependent model refinement.
    4)     PSM to PIM. This transformation is required for abstracting models of existing implementations in a particular technology into a platform-independent model. This procedure often resembles a “mining” process that is hard to be fully automated. It may be supported by tools, though. Ideally, the result of this mapping will match the corresponding PIM to PSM mapping.
    Questions/Discussions
    1.     What specific stages are involved in development using ABAP/4? (e.g., requirements gathering, analysis, design, coding, etc)
    2.     Do these stages fit into any traditional software development lifecycle? (e.g. waterfall model, v-model, etc)
    3.     Which of the stages in (1) above best describes the Platform Independent Model (PIM) of the MDA concept above?
    4.     Which of the stages in (1) above best describes the Platform Specific Model (PSM) of the MDA concept above?
    5.     How does the Accelerated SAP roadmap relate to the MDA concept above?
    6.     Assuming there’s a change in business requirements of a company that could lead to reconfiguring/customizing the R/3 system, how is this achieved? For instance, if a model has earlier been developed for that particular process, how does the change in the model affect coding/modification?
    7.     How is coding achieved with respect to the reconfiguration of the business models or reference models?
    8.     Are all coding manually done or are there tools in the ABAP Workbench that enable codes to be generated automatically from the models of the system?
    9.     How much time is spent in coding compared to developing business models like EPC models?

    I've also read about the SAP Composite Application Framework (CAF).
    But it seems that it's only for Java development....

  • Model Driven Architecture

    Hi,
    Does SAP support the MDA approach of the OMG (aka Object Management Group)?
    If so, which UML modelling tool / code generation tool is provided?
    Regards
    Oliver

    Pran,
    thanks for your reply.
    I'm not quite sure if Together is a mda tool. Mda is a little bit more than UML roundtrip engineering, and mda is not mentioned on the borland site.
    Another question is, if sap officially supports mda and how it fits into the RAD approach of SAP (WebDynPRO perspective of Developer Studio).
    Regards
    Oliver

  • Model Driven Configuration Management

    Hi,
    i'm a PhD student at the [VLBA Lab in Magdeburg|http://www.vlba-lab.de/] and i would like to share my thoughts about my research topic '[Model Driven Configuration Management|http://www.vlba-lab.de/en/Home/Research/Topics/ModelDrivenConfigurationManagement/index.html]' with you. Model-Driven Configuration Management (MDCM), means using MDE techniques to implement the requirements concerning the configuration of IT system landscape and IT infrastructures.
    Problem:
    While the capabilities of Model-Driven Engineering (MDE) have been realized in many parts of software development, MDE support for IT system landscapes and IT infrastructures is barely adequate. Although common frameworks for Enterprise Architecture Management (EAM) propose predefined artifacts and methods for this purpose, the transition between the design stage and the operating stage of software takes place manually. Time-consuming discovery procedures capture the current software configuration after the transition, store it in configuration databases and allow further analysis on the basis of reconstructed models.
    Objective:
    The identified gap between EAM and IT operations shall be closed by model-driven configuration management so that
       1. the deployment of software in an IT system landscape and
       2. the configuration of the underlying IT infrastructure can be accomplished automatically and traceably during both the initial transition and later migration.
    During my research i found similiar approaches for using Model-Driven Engineering techniques either for EAM or for IT operations, but not a combination of both and so my question is, if you have any expierences in using MDE for configuring your IT system landscape on the basis of EAM artifacts?
    Thanks,
    Sebastian

    Hi Sebastian;
    Your quest seems to be very interesting.
    Well I am not sure if you have SAP exprience. Well I am Technology consutant and may be I will try to make sence of your reserch from SAP point of view.
    What I understand from (Model Driven arch) MDE in SAP is a traction (program) called "SPRO" . It allows you to configure the already developed allications (in ABAP). This configuration are stored in Database and then allow further analysis. As you explained.
    Also a technology that might intrest you would be BC sets. It performs predefine recomended configurations for your applications and asks for your inputs if required.
    Regarding your specific area of requirement i.e. automation for IT infra configuration ; i generally feel that developers always get all the tools to get their job easily done...  But administrator never get their due share of attention for ease of use of their tools.

  • Restrict the list of values retrieved by a model driven LOV

    hi all
    i'm try to restrict the list of values retrieved by a model driven LOV just like the article in this link
    http://www.oracle.com/technology/products/jdev/tips/fnimphius/restrictlovlist/restrictlov.html
    and i'm using the jdev11.2 but i always get this error
    java.sql.SQLException: parameter IN or OUT is missing at index 1
    my code is :
    public void SetSchoolLovVar(LaunchPopupEvent launchPopupEvent)
    String var_val=getOt7().getValue().toString();
    System.out.println("++++++++++++++++++++++++++++++++"+var_val);
    BindingContext bctx = BindingContext.getCurrent();
    BindingContainer bindings = bctx.getCurrentBindingsEntry();
    FacesCtrlLOVBinding lov = (FacesCtrlLOVBinding)bindings.get("DeptCode");
    System.out.print("LOVE "+lov);
    System.out.println("+_+_+_+_+__+_+_+__+_+_+_+_+_+_+_+_+_+_________+++++_+_+_"+lov.getName());
    lov.getListIterBinding().getViewObject().setNamedWhereClauseParam("Rejon_For_Prj_Dept",var_val);
    Rejon_For_Prj_Dept is the bind variable of the Lov Query.
    any good idea

    Hi,
    The error might be due to making the bind variable as required but not using it in the vo query. Edit the bind variable and make it as optional by unchecking the required checkbox.
    Sireesha

  • How to update bind variable and restrict values in a Model Driven LOV?

    Hi Guys,
    Using JDev 11.1.1.2.0
    I've recreated an excellent Frank Nimphius article about restricting values derived from a model driven LOV (http://www.oracle.com/technetwork/developer-tools/adf/learnmore/44-restrict-lov-169186.pdf)
    But my bind variable isn't updating. Deleting the bind variable gets me the entire LOV. Activate the code below and insert a bind variable into the where clause like Frank says and I get nothing back. Bind variable is blank. Any ideas? Code wasn't supplied with the article. It seems simple enough but the bind variable isn't updating in the SQL, even though the updated value shows up here...
      public void onLovLaunch(LaunchPopupEvent launchPopupEvent)
        BindingContext bctx = BindingContext.getCurrent();
        BindingContainer bindings = bctx.getCurrentBindingsEntry();
        FacesCtrlLOVBinding lov = (FacesCtrlLOVBinding)bindings.get("DepartmentId");
        lov.getListIterBinding().getViewObject().setNamedWhereClauseParam("deptId","60");
        System.out.println("lov name: " + lov.getName().toString());
        System.out.println("lov Param Attrs: " + lov.getListIterBinding().getViewObject().getNamedWhereClauseParams().getAttribute("deptId").toString());
        System.out.println("lov View Object: " + lov.getListIterBinding().getViewObject().getName().toString());
        System.out.println("lov IterBinding: " + lov.getListIterBinding().getName().toString());
       }Gets me ...
    lov name: DepartmentId
    lov Param Attrs: 60
    lov View Object: _LOCAL_VIEW_USAGE_lov_model_queries_EmployeesView_DepartmentsView
    lov IterBinding: DepartmentIdList_2

    That's a good idea, but it's still not working. Here is how I implemented it. It might be different from your suggestion as I'm still pretty new to this.
    I have a recursive tree table. You select a node. You then click a button which calls the listener below. "findParents" is a method call to the AppModuleImpl class and it finds all parent nodes of your selection. "restrictPartBomLOV", also of the AppModuleImpl class, then modifies the model driven lists' View Object (partBomLOV) to exclude those parent node values.
    The resulting model driven LOV on the popup should be updated, yeah? But it still isn't udpating. If I manually type in the updated Where clause in PartBomLOV.xml query tab, it works, but it doesn't programmatically.
      public void insertPopupFetchListener(PopupFetchEvent popupFetchEvent)
        BindingContainer bindings = getBindings();
        OperationBinding operationBinding = bindings.getOperationBinding("findParents");
        parents = (List)operationBinding.execute();
        operationBinding = bindings.getOperationBinding("restrictPartBomLOV");
        operationBinding.execute();
       public void restrictPartBomLOV(List parents)
          ViewObjectImpl vo = getPartBomLOV();
          String wcl = "";
          Object[]   p = parents.toArray();
          for(int i = 0; i < p.length; i++)
             if (i == 0)
                wcl = wcl + "PNUM <> '" + p.toString() + "'";
    else
    wcl = wcl + "AND PNUM <> '" + p[i].toString() + "'";
    vo.setWhereClause(wcl);
    System.out.println(vo.getWhereClause().toString());
    vo.executeQuery();
    Edited by: LovettWB on Nov 11, 2010 11:23 PM

  • How to run model driven mobile application created in MOAM

    Hi Experts,
    I have created one model using MOAN perspective in Eclipse 3.2 IDE.
    Also deployed it to server. How can I run this model?
    Do I need to create application?? if yes, then which type application I should use?
    Please help.
    Thanks,
    Mehul

    Hi Divya,
    I am implementing application given on
    https://www.sdn.sap.com/irj/sdn/mobile link which is
    "Model-driven Design of Mobile Applications New! "
    According to document, I have configured server and frontend, developed model and deployed successfully. But there is no option or documentation available to run the application.
    If I get simulator/emulator to run mobile application.. how can I run?
    Or should I run through browser with some link?
    Please help. Thnaks in advance.
    Mehul

  • New Project Proposal: Model Driven Health Tools

    MDHT supports the specification and implementation of healthcare information models by creating UML profiles, model transformations, publication, code generation, and model editing tools for clinical informatics users.
    https://projects.eclipse.org/proposals/model-driven-health-tools

    I'm happy to announce that the Triquetrum proposal is available for community review!
    You can find it at https://projects.eclipse.org/proposals/triquetrum
    Any members of the Science IWG (and others of course) that would be interested in this project : please leave a comment!
    regards
    erwin

  • Question about model driven dev and RDS configuring

    I am testing the model driven development that is brought up by Flash Builder4 and LCDS3 recently, and it went pretty well. However i've noticed that the configuration of the RDS for development mode is not recommanded for a production environment.
    My first quetion is can I simply disable the RDS on the server when I want to deploy my app to a production environment and still be able to use all of the features such as data management service and remote service etc.? I've tried to do so but it gave me a 404 page. I felt it was a little bit confusing when you know you DO have a html template located in the right location. If RDS can be disabled without interfering the functionality of the app, where can I find a doc to follow?
    My second question is if the RDS is a must, then how to configure the security setting? I knew some of the requirements by visiting this url:http://help.adobe.com/en_US/LiveCycleDataServicesES/3.1/Developing/WS6822bf3ec1c7b2e9-30fb 9b22126b9ca84aa-8000.html,
    however, when I followed the steps and test it, I got a 400 error in FB4 RDS configuration page.
    Since I am testing this under Tomcat 5.5, I am not sure where should I put the flex-tomcat-common.jar and flex-tomcat-server.jar file in, cause the dir structure of Tomcat 5.5 is a little bit different than that of Tomcat 6.0. Then I put these files under both of the tomcat 5.5\common\lib folder and the tomcat 5.5\server\lib folder. I've doubled checked the the catalina.properties file which is located under tomcat5.5\conf folder and I see the following environment param has been there : ${catalina.home}/common/lib/*.jar.
    The other configuration I made that differs from the doc was: I put <valve classname="flex.messaging.security.TomcatValve"></valve> into the context.xml, which is under the folder Tomcat 5.5/conf. Since I put the Resource definition in the same file, I guess this should not be the problem.
    Does anyone has any successful experience on setting this up?
    Any hint will be appreciated.

    Thanks for the quick reply.
    I solved my first problem, it was because I accidentally commented out part of the RDS configuration and left the servlet-mapping part un-commented. After I generate all the client and server codes and re-deploy them to the environment, I finally got my running demo with RDS disabled.
    For the second problem, I am still stucking in. I've tried to switch to the Tomcat 6.0 and follow both of the LCDS installation doc and the LCDS3.1_using doc. None could work me out. I constantly get the error message said that "The RDS server was successfully contacted, but your security credentials were invalid". So after struggling a whole day, I found the following statement, which is appeared in the ColdFusion configuraton doc:"Note: If you are using ColdFusion MX 7 or earlier, the message "The RDS server was successfully contacted, but your security credentials were invalid," appears. The message indicates that the password was not validated, even if it is correct. Click OK to close the message. ". That's interesting cause it seems it was exact the situation I was encountered. However, in my case, ignoring the error message does not give me a successful RDS connection.
    For your information, I am pasting the configurations I had on my machine and maybe some ppl could give me a correction.
    service-config.xml:
    <security>
      <login-command class="flex.messaging.security.TomcatLoginCommand" server="Tomcat"/>       
            <!-- Uncomment the correct app server
            <login-command class="flex.messaging.security.JRunLoginCommand" server="JRun"/>
            <login-command class="flex.messaging.security.WeblogicLoginCommand" server="Weblogic"/>
            <login-command class="flex.messaging.security.WebSphereLoginCommand" server="WebSphere"/>
            -->
            <security-constraint id="basic-read-access">
                <auth-method>Custom</auth-method>
                <roles>
                    <role>guests</role>
                    <role>accountants</role>
                    <role>employees</role>
                    <role>managers</role>
                    <role>rds</role>
                </roles>
            </security-constraint>
        </security>
    tomcat-user.xml:
    <tomcat-users>
      <role rolename="rds"/>
      <user username="rdsuser" password="rdspassword" roles="rds"/>
    <!--
      <role rolename="tomcat"/>
      <role rolename="role1"/>
      <user username="tomcat" password="tomcat" roles="tomcat"/>
      <user username="both" password="tomcat" roles="tomcat,role1"/>
      <user username="role1" password="tomcat" roles="role1"/>
    -->
    </tomcat-users>
    web.xml:
    <servlet>
            <servlet-name>RDSDispatchServlet</servlet-name>
        <display-name>RDSDispatchServlet</display-name>
            <servlet-class>flex.rds.server.servlet.FrontEndServlet</servlet-class>
            <init-param>
          <param-name>useAppserverSecurity</param-name>
          <param-value>true</param-value>
        </init-param>
            <load-on-startup>10</load-on-startup>
        </servlet>
        <servlet-mapping id="RDS_DISPATCH_MAPPING">
            <servlet-name>RDSDispatchServlet</servlet-name>
            <url-pattern>/CFIDE/main/ide.cfm</url-pattern>
        </servlet-mapping>
    lcds.xml:
    <Valve className="flex.messaging.security.TomcatValve"/>
    <Transaction factory="org.objectweb.jotm.UserTransactionFactory" jotm.timeout="60"/>
    <Resource name="jdbc/codedata" auth="Container"
       type="javax.sql.DataSource"
       username="root"
       password="******"
       driverClassName="com.mysql.jdbc.Driver"
       url="jdbc:mysql://localhost:3306/codedata?autoReconnect=true"/>
       <Resource name="jdbc/atlantis" auth="Container"
       type="javax.sql.DataSource"
       username="root"
       password="******"
       driverClassName="com.mysql.jdbc.Driver"
       url="jdbc:mysql://localhost:3306/atlantis?autoReconnect=true"/> 
    Note that both of the flex-tomcat-common.jar and flex-tomcat-server.jar were already under Tomcat 6.0/lib folder.

  • SAP NetWeaver: SAP's Model-Driven Business Process Application?

    Hi All:
    I am a graduate student currently doing a research on 'Model-Driven Business Process Application'. I came across some literature about SAP NetWeaver during my research. SAP NetWeaver has generated a lot of interest in me and I would like to know more detailed information about it:
    How is SAP adopting BPM principles to manage Work-flows? Can we consider any of the current NetWeaver applications as model-driven?
    It would be great to know the answers to some of these questions. I would sincerely appreciate if anyone of you could please help me with this. Also, thank you very much for your time and efforts. I would be happy to assign reward points to any informative responses.
    Regards,
    Alok

    Refer to this link
    http://help.sap.com/saphelp_nw70/helpdata/EN/6e/fb9442047b0831e10000000a1550b0/frameset.htm
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/5045b3cc-acbe-2910-2bab-8d930cb31a33
    Regards, IA

  • Model 2 architecture only works with forms?

    Hi,
    I want to implement model 2 architecture for my application i have model as java classes, Controller the servlet and JSP the view.
    I want to know if this architecture is only for forms?.
    I want to implement for a event like when a hyper link is clicked then some method in my Java class is invoked and the result displayed on JSP.
    Can this be implemented using model 2 architecture ?
    Thank you.

    I want to know if this architecture is only for forms?.Forms are irrelevant.
    They just provide a way to enter and submit parameters from the user.
    You can just as easily use hyperlinks with parameters encoded on the URL. The server side handling for retrieving parameters remains the same: request.getParameter().
    However there are a couple of limitations because Hyperlinks can only use HTTP "GET", where forms can use HTTP "POST" as well.
    - parameters will be visible in the address bar
    - you have a limitation on a length of the parameters (Post doesn't have this limitation)
    The Model2 architecture is completely independant of whether you use get or post to submit your parameters. What makes it model2/mvc as opposed to model1 is that you run through a servlet layer, rather than doing absolutely everything in JSPs
    Cheers,
    evnafets

  • What are model I & model II architecture

    hi,
    Can anyone help me to understand what is a model I & model II architecture and what is the diffrence between the two

    See:
    Identifying iPod models

  • Migrating Model 2 Architecture

    Hello,
    I am writing an application which needs to be migrated to different servers.
    If I were to write this using model 2 architecture, can the framework be encapsulated within the application, or would I need to install the framework on each server.
    I suppose what I am asking is whether frameworks can be installed at the level of a Web-App, or are they installed at the root of the Web-Server?
    Thanks,

    Hmmm,
    Well I wanted to learn more Java rather than someone
    elses tags.
    :), tags are a lovely feature of jsp. I agree that writing it is far far pleasant than using other people's.
    Im also put off by the number of simple things that
    people get stuck on in these forums, really basic
    things that they dont know how to achieve with the
    framework.
    Agreed, but for every technology there's a learning curve and that probably is steepest in java. You will be surprised to see that there are an equal number of 'Cant get Hello World to Work' threads in the core java forum, but that shouldnt be a cause for a person to shun java :)
    Also, I tried using Studio Creator, which uses JSF, I
    got really nasty un-recoverable errors, which I could
    not resolve because their source lay in the third
    party code.I would rather recommend to lay off jsf for now atleast until we begin to see some good server side support for that. I know of atleast one project that started off with jsf on websphere and then had to quickly switch to struts for want of support and bugs on jsf.
    >
    Also, once you tie your app into a framework your
    stuck with it, which also put me off a little.
    Perhaps I will re-visit struts, I paid for a book on
    the subject so may as well get something from
    it.....
    Dont you find using Java classes pushes your
    knowledge??
    There is a world of API's to play with, even you cant
    know them all !!Yes, agreed. If asked to create a web application using struts, I may have to turn to the books/tutorial for it.
    However I had studied it once and the way they use tags + beans is an incredible thing - you define a bean, bind it to a scope and use the bean in your tags (the html tag library is awesome)
    Now it would have taken a lot of learning the core api to graduate to a level where you could have thought this up of your own. Every framework has a neat way to do things and even if you dont use them you can learn from them and that makes you better - you would learn to use the apis better.
    Personally the way I think of it is - the core apis are the underlying force and you have to master them. I have seen lots of people who are supposedly good on struts and who dont know what scope bindings mean :)
    The frameworks gives you a way to harness the apis to make your web application so easily configurable and lends a touch of elegance to it. You neednt use it, but you can learn from it.
    I am not a great fan of frameowrks, btw :). IMO they are over engineered the level of which is inversely proportional to the documentation ;)
    cheers,
    ram.

  • Model II Architecture- The Flpw?

    Ok in Model II Architecture,
    1. What's the convention - always JSP's instantiate the PageBean or the Controller (through another class) instantiate PageBean or is it dependent on specific requirements?
    2. I have first.jsp and upon submission I get second.jsp , and in between FirstPageBean.class will process the request (suppose form validation) and SecondPageBean will process the request and I get second.jsp.
    What's the convention of passing around action and next page.
    Please provide me the basic flow instead of just mentioning something like servlet mapping. Thanks

    The general convetion used in Model 2 MVC is to have a servlet or framework process an incoming form request (e.g. a POST), create a JavaBean object (or simple object), place that object in the request scope, and dispatch to the next JSP page.
    HTML FORM ---> Serlvet----> JSP PAGE
    Keep in mind many frameworks other there will do this for you. There is no need to go out there re-inventing the wheel.

  • Model II Architecture - The Flow?

    Ok in Model II Architecture,
    1. What's the convention - always JSP's instantiate the PageBean or the Controller (through another class) instantiate PageBean or is it dependent on specific requirements?
    2. I have first.jsp and upon submission I get second.jsp , and in between FirstPageBean.class will process the request (suppose form validation) and SecondPageBean will process the request and I get second.jsp.
    What's the convention of passing around action and next page.
    Please provide me the basic flow instead of just mentioning something like servlet mapping. Thanks

    Struts is a commonly used MVC system, so in relation to that...
    1) In Struts, the controller creates the form beans for the forms. But for other beans that aren't related to that could be created anywhere.
    2) In Struts, the submission goes to the controller which creates the form bean, which has a validate method that is called and errors are returned from that, if any. If any errors, it fowards to the page it came from. If not, it goes to the action, which can to further validation, but the action specifically directs a forward based on the results of the action, which could be back to the input page or some other results display page(s).
    You might want to get Struts and play with it.

Maybe you are looking for