Advantage of model relations?

Hi,
we are using Java Bean models for our web dynpro project. Therefore we generated a model of type "Java Bean model". In the import dialog of the model generation we detected the possibility to define model relations according to the relations used in our java beans. We ended up with a huge model with several model classes. Everything looks fine but I'm seriously asking myself what the big advantage of this approach is. Asuming that the Java bean model will change sometimes I have to reimport the model and have to define all these relations by hand again! So I don't really see an advantage but I guess that I have lost sight of advantages.
I really would appreciate any replies showing me the advantages. Maybe there are also helpful documents.
Regards,
Marc

Hi
JavaBean model allows us to introduce an additional layer of abstraction that has some great benefits like hiding the underlying service, improves availability and performance
Advantages :
1 . Its a Structured and Standard way of coding.
2 . Its Easy for coding and maintaining and enhancements.
As heavy calculations are involved with your application from a long time view its better you go for using seperate bean for this case
1 . /message/1308247#1308247 [original link is broken]
<b>Compact and Easy</b>JavaBeans components are simple to create and easy to use. This is an important goal of the JavaBeans architecture. It doesn't take very much to write a simple Bean, and such a Bean is lightweight&#63719;it doesn't have to carry around a lot of inherited baggage just to support the Beans environment. If a Bean does not require the advanced features of the architecture, it doesn't get them, nor does it get the code that goes with them. This is an important concept. The JavaBeans architecture scales upward in complexity, not downward like other component models. This means it really is easy to create a simple Bean. (The previous example shows just how simple a Bean can be.)
<b>Portable</b>
Since JavaBeans components are built purely in Java, they are fully portable to any platform that supports the Java run-time environment. All platform specifics, as well as support for JavaBeans, are implemented by the Java virtual machine. You can be sure that when you develop a component using JavaBeans it will be usable on all of the platforms that support Java (version 1.1 and beyond). These range from workstation applications and web browsers to servers, and even to devices such as PDAs and set-top boxes.
<b>Leverages the Strengths of the Java Platform</b>
JavaBeans uses the existing Java class discovery mechanism. This means that there isn't some new complicated mechanism for registering components with the run-time system.
As shown in the earlier code example, Beans are lightweight components that are easy to understand. Building a Bean doesn't require the use of complex extensions to the environment. Many of the Java supporting classes are Beans, such as the windowing components found in java.awt.
The Java class libraries provide a rich set of default behaviors for components. Use of Java Object Serialization is one example&#63719;a component can support the persistence model by implementing the java.io.Serializable interface. By conforming to a simple set of design patterns (discussed later in this chapter), you can expose properties without doing anything more than coding them in a particular style.
<b>Flexible Build-Time Component Editors</b>
Developers are free to create their own custom property sheets and editors for use with their components if the defaults aren't appropriate for a particular component. It's possible to create elaborate property editors for changing the value of specific properties, as well as create sophisticated property sheets to house those editors.
Imagine that you have created a Sound class that is capable of playing various sound format files. You could create a custom property editor for this class that listed all of the known system sounds in a list. If you have created a specialized color type called PrimaryColor, you could create a color picker class to be used as the property editor for PrimaryColor that presented only primary colors as choices.
The JavaBeans architecture also allows you to associate a custom editor with your component. If the task of setting the property values and behaviors of your component is complicated, it may be useful to create a component wizard that guides the user through the steps. The size and complexity of your component editor is entirely up to you.
Regards
Abhijith YS

Similar Messages

  • Creating model relations

    I am using the Java Bean model importer in Web Dynpro. I understand that you can not import objects (only primitive types) using the Java Bean importer so you have to create model relations in Web Dynpro. But I have not seen any examples or how to's on this. How do you create a model relation in Web Dynpro that corresponds to a backend object retrieved from a Java Bean?

    Dora,
    Check weblog by Anilkumar Vippagunta
    /people/anilkumar.vippagunta2/blog/2005/09/02/java-bean-model-importer-in-web-dynpro
    Also search your local NetWeaver help for "Importing a JavaBean Model" title -- there is an excellent explanation of requirements / conventions.
    Valery Silaev
    EPAM Systems
    http://www.NetWeaverTeam.com

  • Data modeler, physical model related view

    Hi community,
    is there a way to create a physical model related view in the data modeler or a better idea?
    The reason is simple, let me say, I have a view with string concatenation and want use this view in oracle and sql server, the syntax is different.
    In Oracle it is " column1 || ' ' || column2". The same thing in sql is "column1 + ' ' + column2"
    Regards, Henrik

    Hi Kent,
    thank you for the answer, but it is not really a solution for me to copy the complete relational model to a second one! It is unfavorable for later changes on the model.  You must do them all changes on both models.
    Currently I have one relational model together with four physical models, Oracle 10, Oracle 11, Oracle 12 and MS Sql. If I work with stored functions, procedures, packages, triggers and so one, it is possible to change the content of these objects in the physical model, depending of the sql language and the database version features.
    Only tables and views are not changeable and I’m not able to add a table or view to the physical model.
    Other suggestions?
    Regards, Henrik

  • DM3.0 EA2: Logical Model Relation Cardinality:Source Optional mislabeled?

    In logical model, created a 1:N non-identifying relation between 2 entities - Parent and Child. Parent is 1:N with Child. Both entities have a single column primary key - parent_id and child_id respectively. I would like to enforce RI such that a parent may exist with no children, but a child may not exist without a parent.
    In the logical model the relation properties, cardinality - I modify the Source Optional and Target Optional checkboxes to achieve my desired result. I first tried checking Target Optional and leaving Source Optional un-checked. I then engineer a physical model and generate DDL for Oracle 11g I get this constraint:
    SQL>ALTER TABLE child
      2      ADD CONSTRAINT Relation_1 FOREIGN KEY
      3      (
      4       parent_id
      5      )
      6      REFERENCES parent
      7      (
      8       parent_id
      9      )
    10      ON DELETE SET NULL
    11  ;
    Table altered.Here's a test case illustrating this isn't quite what I wanted (starting with both tables empty):
    SQL>
    SQL>
    SQL>insert into parent (parent_id) values (1);
    1 row created.
    SQL>commit;
    Commit complete.
    SQL>
    SQL>insert into child (child_id, parent_id) values (901, 1);
    1 row created.
    SQL>commit;
    Commit complete.
    SQL>
    SQL>delete from parent;
    delete from parent
    ERROR at line 1:
    ORA-01407: cannot update ("ODS_ETL_OWNER"."CHILD"."PARENT_ID") to NULLIf I have Source Optional checked, and Target Optional not checked, engineer a physical model and generate DDL for Oracle 11g I get this constraint which produces the desired results with my test case:
    SQL>ALTER TABLE child
      2      ADD CONSTRAINT Relation_1 FOREIGN KEY
      3      (
      4       parent_id
      5      )
      6      REFERENCES parent
      7      (
      8       parent_id
      9      )
    10  ;
    Table altered.
    SQL>
    SQL>insert into parent (parent_id) values (1);
    1 row created.
    SQL>commit;
    Commit complete.
    SQL>
    SQL>insert into child (child_id, parent_id) values (901, 1);
    1 row created.
    SQL>commit;
    Commit complete.
    SQL>
    SQL>delete from parent;
    delete from parent
    ERROR at line 1:
    ORA-02292: integrity constraint (ODS_ETL_OWNER.RELATION_1) violated - child
    record foundBut that seems backwards - and the documentation also reads as if it’s backwards. Am I missing something or are the Source Optional and Target Optional checkboxes mislabeled? Should they be Source Manditory and Target Manditory?

    I would like to enforce RI such that a parent may exist with no children, but a child may not exist without a parent.You need to set parent as optional and child to be mandatory.
    Am I missing something or are the Source Optional and Target Optional checkboxes mislabeled? Should they be Source Manditory and Target Manditory?There is a relationship and two ends of that relationship and you can set for each end whether it's optional or not. And that's seen directly using Barker notations. Source and target optionality place will be swapped on diagram if you use IE notation.
    I expected that cardinality part could be more confusing for you because at source end you define cardinality of the target, but it seems you have no problem with that.
    Philip

  • SQL Developer Data Modeler - Relation to Foreign Key Generation

    SQL Developer Data Modeler 2.0.0 Build 584.
    I am having trouble with Relations to Foreign Keys when Forward Engineering a Relational Model from a Logical Model.
    First of all, the Naming Standard is not applied to the Foreign Keys when I perform the Engineer to Relational Model.
    So I right click on the Relational Model from the Browser and Apply Naming Standards to Keys and Constraints.
    I uncheck everything but Foreign Keys.
    Now, Foreign Keys are named according to my Naming Standards.
    However, this process also performs renames on the Column Foreign Keys even though I specifically unchecked that option.
    This appears to be a BUG in the software and I haven't found a way around it.
    I tried using {column} instead of {ref column} in the Naming Standard Template for Column Foreign Key, but that simply resulted in renaming my columns to "{column}".
    Please confirm and/or let me know of any work-around for this.
    Thanks,
    Dan

    Hi Philip,
    Thanks for the reply.
    Is this recorded as a bug to be addressed in the future?
    Should I submit this problem via Oracle Support?
    The other work-around I came up with is to override every Relation name in the Logical Model with the name I want to use in the Relational Model.
    When the Relational Model is Engineered, this becomes my Foreign Key name.
    Of course, this is not how I want to do things, so I am hoping for a bug fix someday.
    Regards,
    Dan

  • Nullpointer exception in SAP code (RFC model related)

    Hi,
    Some threads have already been opened on this issue, but none of them give me a solution.
    The problem is that a Nullpointerexception is thrown when I create a new Input element (to bind it to the input node of my rfc model).
    As you can see in the stack trace, the nullpointerexception is thrown in SAP code.
    This happens for all function modules I've created myself (even the simplest ones with no parameters/no code), but for the SAP BAPIs it works???
    So this is not an issue related to Javaconnectors/my java code because it works for BAPIs (I'm doing exactly the same).
    I've already restarted the J2EE server, recreated the whole application, tested with new applications (to avoid any caching problems) but nothing works.
    I've been trying to resolve this issue for several hours without success. It's really frustrating.
    Any help appreciated!
    Jeroen
    java.lang.NullPointerException
         at com.sap.tc.webdynpro.modelimpl.dynamicrfc.AiiModelClass.createNewBaseTypeDescriptor(AiiModelClass.java:220)
         at com.sap.tc.webdynpro.modelimpl.dynamicrfc.AiiModelClass.descriptor(AiiModelClass.java:186)
         at com.eozen.aif.ce5solman.Z_Jver_Create_Infosheet_Input.<init>(Z_Jver_Create_Infosheet_Input.java:51)
         at com.eozen.jver.aif.Infosheets.wdDoInit(Infosheets.java:98)
         at com.eozen.jver.aif.wdp.InternalInfosheets.wdDoInit(InternalInfosheets.java:181)
         at com.sap.tc.webdynpro.progmodel.generation.DelegatingComponent.doInit(DelegatingComponent.java:95)

    I suddenly realized there is one last option and it works: I managed to sidestep the problem by doing the rfc via an R/3 SAP system that forwards the call to the CRM system. (The CRM 5.0 system is the one causing the nullpointerexception).
    Maybe some incompatibilities between J2EE/WDP SP14 & CRM 5.0?

  • Data Modeler: Relational data model questions

    1. Can a different notation be specified for relational data models' constraints? Specifically, I'd like crow's feet. BTW, the docs show crow's feet and parent pointer (with the arrowhead), but there's no such thing in the actual modeler.
    2. Is there any way to manually route FK constraints lines?
    3. When forward engineering from logical, is there any way to indicate the preferred name for keys and indexes (primary, unique, foreign)?
    4. Mandatory/optional indicator on tables: what exactly does 'N' or 'A' stand for? I can understand 'N' meaning "Not optional", but 'A'? Wouldn't it be simpler to use '*' and 'o' like in the logical?
    Man, do I ever miss Designer!
    Thanks,
    Patrick

    Here's one more question:
    I've transformed several super/sub entities to relational, and some of the tables do not allow me to open Properties (on the table). I can use the navigator to open column properties, but cannot open table properties (neither from diagrammer nor from navigator). Some of the tables are two or three subtype levels deep, and I haven't figured out why some open and some don't.

  • Data Model: Relational Tables/Columns Naming Options

    Hello,
    My design consists of several Relational models.
    1. Using Logical model properties, I defined Naming Options (Max. Name Length, Character Case, Valid Characters) applicable to all Entities, Attributes and Views.
    2. But for Relational models, Tables/Columns/Views Naming Options (Max. Name Length, Character Case, Valid Characters) can only be defined per Relational model and not for all the models.
    Question: Is it possible to define Tables/Columns/Views Naming Options (Max. Name Length, Character Case, Valid Characters) applicable to all Relational models? If yes, please inform me.
    Thanks
    Chiedu

    Andrey,
    When You select all the columns, you need to hold the Shift key to select all. Don't let it go to do the copy. So, still holding the shift key, right click for the context menu. The menu only has 2 items, Copy and Delete. Now Copy. Then you can go to the diagram and select paste, to paste them in each of the tables you want those columns to appear in.
    Sue

  • Record Management. Record Model relation

    Hello,
    Can anyone explain me what is the relation functionality in the record modeller?
    I mean the part between rol visibility and attributes.
    Help sap says:
       "Optional: Enter a relation. The relation expresses the relationship between the element and the record above it. Input help is available for selecting the relation. (You maintain relations in registry maintenance in the dialog box for Area, tab page POID Directory.) "
    You can define this relations using SRMREGEDIT in the Direct POID tab but I can't find any example where you can use this part of the record modeller.

    Hi,
    Relation is a business semantic given to a linkage between two objects. For eg, in SAP Records Management which is used by PLM in the backend, a record created using a record model will have a IO(instance of) relation written for it. Similarly, if you have attached an object to a record then a CT(contains) relation is written with record being the main object & linked object being subservient object. This is just to understand the relations & does not necessarily affect the behaviour of the objects.
    thanks & regards,
    pragya

  • Org Model Related

    Hi ,
    I have rather a question regarding ord assignment. I understand the hierarchy while creating the ord model is as below.
    head company->co code-> sales org->sales office---> sales group.
    Our business requirement is to have sub group to Sales Group.
    Now as per my understanding we can not have any sub group to sales group in CRM. please correct me if this is possible and how? and if this is not possible what could be way out??? we are pulling org model from ECC.
    regards,
    Dhruv

    Sir,
    Thanks for the information. My doubt is whether is it possible to replicate the same to ECC or vice verse i.e can you assign sub group to Sales group and replicate to CRM as it is?
    Also I need more understanding of what you have suggested: "*If you want to buidl some logic also on those, one possible way would be to read relationships between then. For example you would read the linked org.unit to sales group org. unit. And then it would be up to the coding, what you want to do with it."

  • Org model related questions

    1. We created the org model in CRM 5.0. But, the client changed there mind and want to use R/3 as the system of record and want to use ALE distribution for copying the initial and delta changes of the org model from R/3 to CMR. My question is what are the implications of turning the ALE distribution ON after the CRM 5.0 org model is already in place? Or is there a way to get rid of the CRM 5.0 org model and then just run the ALE distribution?
    2. Can additional attributes be assigned to the org model in R/3, e.g. Transaction type or would this additional data need to be maintained directly in CRM?
    3. Are there effective dates in the org model in R/3?
    Thanks for your help.

    Sir,
    Thanks for the information. My doubt is whether is it possible to replicate the same to ECC or vice verse i.e can you assign sub group to Sales group and replicate to CRM as it is?
    Also I need more understanding of what you have suggested: "*If you want to buidl some logic also on those, one possible way would be to read relationships between then. For example you would read the linked org.unit to sales group org. unit. And then it would be up to the coding, what you want to do with it."

  • [BUG][4.0EA3] Invalid surrogate key is created after engineering to relation model

    Repro steps:
    Go to Tools -> Domain Administration. Add new domain named MyIdentifier with logical type UNIQUEIDENTIFIER. Apply and save changes.
    Go to Tools -> Preferences, then Data Modeler -> Model -> Relational. Get to Surrogate Column Data Type group box and set Domain = MyIdentifier. Apply changes.
    Create new Entity and enable option "Create Surrogate Key". Apply changes.
    Engineer to Relational Model with default settings.
    Expected result:
    Entity_1_ID column's data type is UNIQUEIDENTIFIER
    Actual result:
    Entity_1_ID column's data type is CHAR

    I've forgot to mention, that my default RDBMS Site is set to SQL Server 2008. In Types Administration UNIQUEIDENTIFIER is mapped to CHAR for Oracle, but it mapped to UNIQUEIDENTIFIER for SQL Server 2008.

  • Tabular Model Best Practice - use of views

    Hi,
    I've read in some sites that using views to get the model data is a best practice.
    Is this related to the fact tables only right? Friendly names can be configured in the model, so views can be used to restrict data volume but besides from that what are the other advantages?
    Model needs to know all the relation between tables, so using a unique view that combines joins to present one big view with all the data isn't useful.
    Best regards

    Yes, I think most people would agree that it isn't helpful to "denormalise" multiple tables into a single view. The model understands the relationships between tables and queries are more efficient with the multiple smaller related tables.
    Views can be helpful in giving a thin layer of independence from the data. You might want to change data types (char() to date etc), split first/last names, trim irrelevant columns or simply isolate the model from future physical table changes.
    In my view, there aren't any hard and fast rules. Do what is pragmatic and cleanest.
    Hope that helps,
    Richard

  • Database Models

    Oracles database has been since time memorial been based on the Relational data base model. We even have a way of converting object models into Relational model. Why do we stick to this model only? Other models; especially the Object oriented Database model is gaining popularity and the logical step as almost all computer s/w moves towards the Object oriented approach. Why has there been no move to migrate to such a model?
    what are the advantages/disadvantages of relational model to Object oriented model and some issues related to migrating to such a model?

    There are a number of Object Oriented databases out there, with Gemstone perhaps the best known. Also, Oracle, and other RDBMS vendors are adding more object oriented features all the time.
    However, there are some downsides to OO databases. One of the biggest is that it is often really difficult to query the data directly. All interaction with the database needs some sort of mapping layer to instantiate the objects and get their attributes. It is also difficult, and sometimes impossible, to generate ad hoc queries that try to look at the data in a way that does not match the object model, something that is relatively easy in a well designed relational model.
    Finally, object oriented databases represent a more or less one to one mapping to a currently popular programming paradigm. What happens to the data when the next great programming paradigm (foo perspective) comes along? Will the foo prgrammer be able to easily read the objects in the OO database? Probably not. Will the foo programmer be able to easily read the relational data? Almost certainly.
    John

  • Problem in creating model

    Hi,
    While creating model i am getting this error in the last step i.e. after selecting the BAPI function.
    what might be the pro blem can any one help me plz.
    [Warning]:     Creating a connection with Metamodel language <en> failed.  Continuing with language <ENG>
    [Fatal]:     com.sap.mw.jco.JCO$Exception: Missing R3NAME=... or ASHOST=... in connect_param in RfcOpenEx
    [Info]:     Creating Model: Model
    [Info]:     Creating Model Class: Bapi_Bank_Getlist_Input
    [Info]:     Creating Model Class: Bapi_Bank_Getlist_Output
    [Info]:     Creating Model Class: Bapiret2
    [Info]:     Creating Model Relation: Bapi_Bank_Getlist_Output:Return
    [Info]:     Creating Model Class Property: Type
    [Info]:     Creating Model Class Property: Id
    [Info]:     Creating Model Class Property: Number
    [Info]:     Creating Model Class Property: Message
    [Info]:     Creating Model Class Property: Log_No
    [Info]:     Creating Model Class Property: Log_Msg_No
    [Info]:     Creating Model Class Property: Message_V1
    [Info]:     Creating Model Class Property: Message_V2
    [Info]:     Creating Model Class Property: Message_V3
    [Info]:     Creating Model Class Property: Message_V4
    [Info]:     Creating Model Class Property: Parameter
    [Info]:     Creating Model Class Property: Row
    [Info]:     Creating Model Class Property: Field
    [Info]:     Creating Model Class Property: System
    [Info]:     Creating Model Class Property: Bank_Ctry
    [Info]:     Creating Model Class Property: Max_Rows
    [Info]:     Creating Model Class: Bapi1011_List
    [Info]:     Creating Model Relation: Bapi_Bank_Getlist_Input:Bank_List
    [Info]:     Creating Model Class Property: Bank_Ctry
    [Info]:     Creating Model Class Property: Bank_Key
    [Info]:     Creating Model Class Property: Bank_Name
    [Info]:     Creating Model Class Property: City
    [Info]:     Creating Model Relation: Bapi_Bank_Getlist_Output:Bank_List
    [Info]:     Creating Model Relation: Bapi_Bank_Getlist_Input:Output:Bapi_Bank_Getlist_Output
    Can any one help me plz.
    Regards,
    H.V.Swathi
    Edited by: H.V Swathi on Feb 18, 2009 10:00 AM

    Hi Swathi,
    Your log is clearly saying  that issue with JCO.
    1) Check the JCO's are pointing in to the correct R/3 system which you required.
    2) Check the JCO's  status also
    And also double check RFC at the back end RFC enabled or not?
    While creating the Model make sure that backend server name , client , system number ...etc all are giving correct where the RFC exists.
    If all above points "yes" why dont you try with J2EE complete engine restart. Still issues get back to me.
    Rgds
    -SS
    Edited by: Sridhar Sabbani on Feb 18, 2009 11:13 AM

Maybe you are looking for