TopLink Mapping WorkBench - Interfaces

Hi,
I am using toplink workbench version 9.0.4.5 ,Oracle DB 10g(9.0.4),jdk version 1.4.2
I get an issue with interfaces in mapping workbench. When I select refresh classes option, the implementors selected for the interfaces are not retained.
Is this the expected behaviour ?
Is there any patch for this problem ?
I had applied patch number 3941343 for this mapping work bench. Is there any other pathces we should be applying to this version ?
Thanks
Priya

I am using 10.1.3.0.1 and for me there are still grave issues with interface management in the WB.
First of all, I get a NullPointerException when clicking the "add" Button on the interface descriptor's implementor list after having refreshed all classes by selecting the project packages and doing "refresh classes" from the context menu. I have to close and restart the WB in order to be able to continue working.
Then, some attributes which are not common among the implementor classes are detected as common query keys.
Lastly, if I use variable one-to-one relationships and de-select some class indicator values, the de-selected implementor descriptors are displayed as selected after workbench restart again, showing me errors about missing class indicator values for selected descriptors (Error 0055).

Similar Messages

  • Best practices TopLink Mapping Workbench multi-user + CVS?

    This might be a very important issue, in our decision whether or not to choose TopLink --
    How well is multi-user development and CVS supported when using the TopLink Mapping Workbench? Are there best practices regarding this use case?
    Thanks.

    We have no problem with the workbench and CVS. Only a couple of our developers are responsible for the mappings so we havn't really run into concurrent edits. It's pure XML so a decent mergetool with XML support should let you resolve conflicts pretty easily.

  • Toplink mapping workbench

    I am trying to download the Toplink Mapping workbench and cannot locate it on Oracle website. Can anyone let me know where I can download it from? I am just going around in circles.

    The Workbench is included in the TopLink download available by clicking on the red "Free Download" button on the TopLink OTN homepage (http://www.oracle.com/technology/products/ias/toplink/index.html).
    Once you've downloaded the .zip you can find info on configuring the Workbench in the installation instructions (http://www.oracle.com/technology/products/ias/toplink/doc/10131/install/install.html).
    --Shaun                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • Vulnerability - Oracle toplink mapping workbench password algorithm

    Could someone from Oracle post security contact info. This is regarding a possible vulnerability in TopLink referred to in this posting:
    http://marc.theaimsgroup.com/?l=bugtraq&m=107531028325112&w=2
    I would like to know Oracle's response to this item before I publish a report to our clients.
    Thanks,
    Mark Hoffman

    It has come to our attention that a 3rd party has published the algorithm used to obfuscate a database password stored in the runtime configuration file (project.xml or java source file) generated by the TopLink Mapping Workbench version 9.0.3.
    This database password is NOT used when TopLink is using an application server’s database connection pool and this issue does not apply. In this case TopLink uses a specified data source name and the application server manages the database password.
    For those not using the app server connection pool, the obfuscation is not meant to offer encryption protection for the password stored in the file. It is a mechanism meant to make the password in the file unreadable to the naked eye. It is not a replacement for proper file permission and access control to protect the file.
    It is an optional convenience feature that customers have requested as they have found it to be useful during development and internal testing. The only way the password is saved in the file is if the option that is explicitly marked “Save Password (Unencrypted)” is used.
    For encrypted security protection using technology such as Java Cryptography Extension (JCE), the unencrypted password can be set using APIs provided in the TopLink runtime libraries. A code example follows:
    boolean shouldLoginSession = false;
    DatabaseSession session = null;
    session = (DatabaseSession)SessionManager.getManager().getSession("MySessionName", shouldLoginSession);
    String password = //retrieve the password as an unencrypted string from somewhere
    session.getLogin().setPassword(password); //note this assumes that the user is already set in the project
    session.login();
    Guidelines:
    1.     If you are using the application server’s database connection pool, this issue does not apply. TopLink simply specifies a data source name and the application server manages, stores and encrypts the password.
    2.     If you are not using the application server’s database connection pool, use the optional Mapping Workbench feature to store the password in the project.xml or java source file for development or internal testing purposes only if there is proper file permission and access control to protect the file.
    3.     For deployment or unsecured development environments utilize the TopLink API’s provided that allow secure password encryption technology to be used.
    This issue only applies to version 9.0.3 and prior; in 9.0.4 the TopLink Mapping Workbench uses JCE to encrypt the file.
    Regards,
    Dennis Leung
    Oracle Corp.

  • Using Java 1.5 with TopLink Mapping Workbench 10g(9.0.4.9) - Exception

    We're getting a ExternalClassNotFoundException when refreshing classes in 10g(9.0.4.9) workbench. The classes were recently compiled in JAVA 1.5. We have just migrated from RAD6 using Java 1.4 to RAD8 using Java 1.5. Is there a way to use this verion of the workbench with JAVA 1.5? Or is our only alternative to upgrade to a later version on the workbench.

    I strongly suggest to upgrade to AS 10.1.3 to get this.
    Think of future support of AS 9.0.4. You will get not critical patch updates anymore.
    --olaf                                                                                                                                                                                                                                                                                                               

  • Variable 1:1 mapping and interface????

    I am having a little trouble with mapping a variable 1:1 where the reference descriptor is an interface. Everything is fine in the work bench until I finally get stuck with Query Key Name(s) are no longer valid.
    Basically I have an interface
    ContactInterface, which is implemented by several classes
    PhoneContact, EmailContact, etc. The common key is the customerID which exists in PhoneContact and EmailContact. Both of these classes are mapped correctly. In the upper class Customer I have a contact attribute that is mapped as a variable 1:1 it points to the reference descriptor ContactInterface, the class indicators info is correct, and the Query Key Association is mapped from CUSTOMERID to customerID (this is the common query key).
    Any ideas on why this does not work or why I am getting
    the error. Is there anything special I must to in my
    interface or implementors to get this to work.
    Thanks

    It is in the TopLink Mapping Workbench UI and the exception or error is
    "The following specified Query Key Name(s) are no longer valid: customerID" Unfortunately this message is not in the Trouble Shooting guide. I simplified my
    example to only one implementor of the interface.
    This is the interface:
    //Note the methods are there only because I
    //was trying to see if maybe the def for getter
    //and setters were needed in the interface.
    public interface ContactI
    public String getContactInfo();
    public void setContactInfo(String contactInfo);
    public int getCustomerID();
    public void setCustomerID(int customerID);
    Implementation of ContactI (Interface):
    public class EmailContact implements ContactI
    String contactInfo = null;
    int customerID=-1;
         public int getCustomerID()
              return customerID;
         public void setCustomerID(int customerID)
              this.customerID = customerID;
         public String getContactInfo()
              return contactInfo;
         public void setContactInfo(String contactInfo)
              this.contactInfo = contactInfo;
         public EmailContact()
              super();
    The container class Customer:
    public class Customer
    int customerid = -1;
    String lastName = null;
    String firstName= null;
    java.util.Date contactDate =null;
    ContactI contact = null;
         public ContactI getContact()
              return contact;
         public void setContact(ContactI contact)
              this.contact = contact;
         public java.util.Date getContactDate()
              return contactDate;
         public void setContactDate(java.util.Date contactDate)
              this.contactDate = contactDate;
         public int getCustomerid()
              return customerid;
         public void setCustomerid(int customerid)
              this.customerid = customerid;
         public String getFirstName()
              return firstName;
         public void setFirstName(String firstName)
              this.firstName = firstName;
         public String getLastName()
              return lastName;
         public void setLastName(String lastName)
              this.lastName = lastName;
         public Customer()
              super();
    tables are:
    create table customer
    customerid number primary key not null,
    lastname varchar(32),
    firstname varchar2(32),
    contactClass varchar2(255)
    create table contact
    customerid number primary key not null,
    contactInfo varchar2(45)
    alter table contact add foreign key (customerid)references customer;
    I tried this way also/ modified the class accordingly:
    create table customer
    customerid number primary key not null,
    contactid number,
    lastname varchar(32),
    firstname varchar2(32),
    contactClass varchar2(255)
    create table contact
    contactid number primary key not null,
    contactInfo varchar2(45)
    alter table customer foreign key (contactid)references contact;
    In the mapping workbench I load ContactI, Customer and
    EmailContact. On the ContactI in the Implementors tab I select EmailContact (Don't know what Common Query Keys
    pain is for because I never see anything in it). Then
    on the EmailContact I map EmailContact and the attributes to contact table. Then I map Customer to Customer table, on the contact attribute I map as a
    variable one to one, then in the general tab for this
    attribute I select Reference Descriptor ContactI, in the
    class indicator info tab I select CONTACTCLASS as the
    indicator field of type java.lang.String. I click on include so there is a check mark next to EmailContact and indicator value is CONTACT. I switch to query key association and click add and select CUSTOMERID as the foreign key and customerID as the Query Key Name, at
    this point I get the above message. It is saying that
    customerID in EmailContact is no longer a valid Key Name,
    yet if I click over to EmailContact customerID is valid.
    Unfortunately there is no example of doing this in the documentation and this error message is not listed in the trouble shooting guide.

  • Mapping inner class in mapping workbench

    A project needs to work with inner classes and map these inner classes using TopLink Mapping Workbench. Is this supported? Thanks.
    Haiwie

    Karen,
    Thanks for your response.
    I tried with 9.0.4.4, and it worked. I had to use 'Use Factory' option for Instantiation; the mapping workbench complains about the default instantiation setting, i.e. 'Use Default Constructor'.
    Haiwei

  • Inheritance in mapping workbench

    I try to use an existing class design with TopLink: I have for each table classes for value objects (*VO) containing only the attributes from the database tables (including the foreign keys). And I have classes for composite objects (*CO) inherited from *VO, additional containing the references to other VO and CO objects.
    A simple example:
    class FirstVO           // attributes for first database table
    private long id;     // database primary key
    private long secondId;// database foreign key to second table
    class FirstCO extends FirstVO      // references from first database table
    private SecondVO second;     // object reference to second table's object
    class SecondVO           // attributes for second database table
    private long id;     // database primary key
    In TopLink mapping workbench I have done the mapping for classes *VO. That's okay.
    When I try to do the mapping for class FirstCO, I get problems:
    - TopLink mapping workbench recognizes the class hierarchy for FirstCO fine and displays it in class info.
    - But there is not way in workbench to do the mapping of the inherited attributes for class FirstCO.
    - It does not recognize that it could use the mapping from inherited class FirstVO also for FirstCO. Setting in Descriptor/...FirstClassCO.ClassDescriptor.xml the attribute Descriptor/mappings/Mapping/inherited to true will not change this (but a green arrow up is displayed with FirstCO).
    - The workbench displays an error about class FirstCO: The following primary key fields are unmapped: ID
    How can I map this field?

    Have you setup the descriptor inheritance? Right click on the Descriptor's FirstVO and FirstCO, and select "Advanced properties--inheritance". Set the Parent Decriptor for FirstCO to be FirstVO (it's on the bottom of the inheritance tab). When you do that, you should be able to map the inherited attributes with no problems. Basically, you can remap (aka override" the mappings for superclass in subclasses.
    - Don

  • Mapping Workbench & JDeveloper

    I am having significant problems working with both the Toplink Mapping Workbench 10g (9.0.4.2 build 040311) and JDeveloper 10g (Version 9.0.5.2 build 1618) on the same project.
    For instance, I created an empty Toplink-enabled Project in JDeveloper. Closed JD and opened the .mwp project from the Workbench. Created some CMP 2.0 Entity EJBs and exported the model java source. Closed WB in order to open JD and add the ejb-jar.xml file to the project, but JB now errored on the .mwp project file. This seems such a basic incompatibility that I’m wondering whether I’m not using the tools the way they are intended.
    What is the recommended way of working with Toplink and JDeveloper? I know that some of the workbench functionality is available within JD, but there seemed to be things that I couldn’t do without the workbench (e.g. export model java source)
    I’d appreciate any advice anyone can give me

    Matthew,
    Switching between the workbench and JDeveloper is not supported at this time. You can however, import a workbench project in JDeveloper by performing manual steps. Please look at the JDeveloper release notes for that information.
    Exporting model java source is not available in JDeveloper since you will always be working with your .java to begin with.
    To get yourself started quickly, you can use POJO from tables (TopLink) wizard in JDeveloper.

  • Error migrating 9.0.4 mapping workbench project to 10.1.3.4.0

    I get the following error, when I tryt o open the 9.0.4 mapping workbench project file woth Toplink Mapping workbench 10.1.3.4.0 for migration. Please help.
    oracle.toplink.workbench.framework.OpenException: Exception [TOPLINK-106] (Oracle TopLink - 10g Release 3 (10.1.3.4.0) (Build 080602)): oracle.toplink.exceptions.DescriptorException
    Exception Description: The method [legacy50SetTypeNameForTopLink] on the object is throwing an exception.
    Argument: [null]
    Internal Exception: java.lang.reflect.InvocationTargetException
    Target Invocation Exception: java.lang.NullPointerException
    Mapping: oracle.toplink.mappings.DirectToFieldMapping[type-->type]
    Descriptor: XMLDescriptor(oracle.toplink.workbench.mappingsmodel.meta.MWTypeDeclaration --> [DatabaseTable(type-declaration)])
         at oracle.toplink.workbench.mappingsplugin.MappingsPlugin.open(MappingsPlugin.java:290)
         at oracle.toplink.workbench.framework.internal.FrameworkApplication.open(FrameworkApplication.java:689)
         at oracle.toplink.workbench.framework.internal.FrameworkNodeManager.openCallback(FrameworkNodeManager.java:341)
         at oracle.toplink.workbench.framework.internal.RunnableProjectLoader.run2(RunnableProjectLoader.java:76)
         at oracle.toplink.workbench.framework.internal.RunnableProjectLoader.run(RunnableProjectLoader.java:63)
         at java.lang.Thread.run(Thread.java:595)
    Caused by: Exception [TOPLINK-106] (Oracle TopLink - 10g Release 3 (10.1.3.4.0) (Build 080602)): oracle.toplink.exceptions.DescriptorException
    Exception Description: The method [legacy50SetTypeNameForTopLink] on the object is throwing an exception.
    Argument: [null]
    Internal Exception: java.lang.reflect.InvocationTargetException
    Target Invocation Exception: java.lang.NullPointerException
    Mapping: oracle.toplink.mappings.DirectToFieldMapping[type-->type]
    Descriptor: XMLDescriptor(oracle.toplink.workbench.mappingsmodel.meta.MWTypeDeclaration --> [DatabaseTable(type-declaration)])
         at oracle.toplink.exceptions.DescriptorException.targetInvocationWhileSettingValueThruMethodAccessor(DescriptorException.java:1686)
         at oracle.toplink.internal.descriptors.MethodAttributeAccessor.setAttributeValueInObject(MethodAttributeAccessor.java:145)
         at oracle.toplink.mappings.DatabaseMapping.setAttributeValueInObject(DatabaseMapping.java:1143)
         at oracle.toplink.mappings.DatabaseMapping.readFromRowIntoObject(DatabaseMapping.java:1046)
    Thanks

    I dont have any multitables enabled on the project. Also there are no childs referring to the same tables as parent. This seems to be something to do with the legacy data types.
    Is there any way to identify the descriptor/elemnt that is causing this error? Is there any way to enable debug trace?
    Unfortunately, I cannot send the project, neither my metalink account works.

  • Which mapping workbench to use?

    Is the Toplink Mapping Workbench integrated with JDeveloper same as the standalone Toplink Mapping Workbench?
    In the Mapping Workbench that comes integrated with JDeveloper 10.1.2, will I be able to specify AllFieldsLockingPolicy?
    Is the Mapping Workbench 10.1.3 compatible with JDeveloper 10.1.2?
    -Madhav

    Hi Madhav,
    The TopLink Mapping Editor in JDeveloper for versions 9.0.5 - 10.1.3 has equivalent functionality as the 9.0.4 Mapping Workbench. However, the 10.1.3 version of the Mapping Workbench does have additional features that have not yet been included in any released JDeveloper versions. One of these feature included in the Mapping Workbench is AllFieldsLockingPolicy configuration. In version 11 of JDeveloper, the functionality will be equivalent with the Mapping Workbench and better in some cases. In terms of compatibility, we have not yet implemented a migration tool to go between the Mapping Workbench and JDeveloper. Let me know if you need more information.
    Thanks, John

  • Exceptions while Opening a older toplink map in toplink 11g workbench

    Hi
    I have a toplink map used with toplink 10g. Now that after moving to toplink 11g I am unable to open the map using workbench. I am getting the following exception while opening.
    Inputs to solve this probelm are welcomed.
    oracle.toplink.workbench.framework.OpenException: Exception [TOPLINK-106] (Oracle TopLink - 11g (11.1.1.0.1) (Build 081030)): oracle.toplink.exceptions.DescriptorException
    Exception Description: The method [legacySetDatabasePlatformNameForTopLink] on the object is throwing an exception.
    Argument: [null]
    Internal Exception: java.lang.reflect.InvocationTargetException
    Target Invocation Exception: java.lang.IllegalArgumentException: missing database platform named: null
    Mapping: oracle.toplink.mappings.DirectToFieldMapping[databasePlatformName-->platform-name]
    Descriptor: XMLDescriptor(oracle.toplink.workbench.mappingsmodel.db.MWDatabase --> [DatabaseTable(database)])
         at oracle.toplink.workbench.mappingsplugin.MappingsPlugin.open(MappingsPlugin.java:293)
         at oracle.toplink.workbench.framework.internal.FrameworkApplication.open(FrameworkApplication.java:689)
         at oracle.toplink.workbench.framework.internal.FrameworkNodeManager.openCallback(FrameworkNodeManager.java:341)
         at oracle.toplink.workbench.framework.internal.RunnableProjectLoader.run2(RunnableProjectLoader.java:76)
         at oracle.toplink.workbench.framework.internal.RunnableProjectLoader.run(RunnableProjectLoader.java:63)
         at java.lang.Thread.run(Thread.java:595)
    Caused by: Exception [TOPLINK-106] (Oracle TopLink - 11g (11.1.1.0.1) (Build 081030)): oracle.toplink.exceptions.DescriptorException
    Exception Description: The method [legacySetDatabasePlatformNameForTopLink] on the object is throwing an exception.
    Argument: [null]
    Internal Exception: java.lang.reflect.InvocationTargetException
    Target Invocation Exception: java.lang.IllegalArgumentException: missing database platform named: null
    Mapping: oracle.toplink.mappings.DirectToFieldMapping[databasePlatformName-->platform-name]
    Descriptor: XMLDescriptor(oracle.toplink.workbench.mappingsmodel.db.MWDatabase --> [DatabaseTable(database)])
         at oracle.toplink.exceptions.DescriptorException.targetInvocationWhileSettingValueThruMethodAccessor(DescriptorException.java:1702)
         at oracle.toplink.internal.descriptors.MethodAttributeAccessor.setAttributeValueInObject(MethodAttributeAccessor.java:202)
         at oracle.toplink.mappings.DatabaseMapping.setAttributeValueInObject(DatabaseMapping.java:1228)
         at oracle.toplink.mappings.DatabaseMapping.readFromRowIntoObject(DatabaseMapping.java:1118)
         at oracle.toplink.internal.descriptors.ObjectBuilder.buildAttributesIntoObject(ObjectBuilder.java:277)
         at oracle.toplink.sdk.SDKAggregateObjectMapping.buildCompositeObject(SDKAggregateObjectMapping.java:58)
         at oracle.toplink.mappings.foundation.AbstractCompositeObjectMapping.valueFromRow(AbstractCompositeObjectMapping.java:231)
         at oracle.toplink.mappings.DatabaseMapping.readFromRowIntoObject(DatabaseMapping.java:1117)
         at oracle.toplink.internal.descriptors.ObjectBuilder.buildAttributesIntoObject(ObjectBuilder.java:277)
         at oracle.toplink.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder.java:582)
         at oracle.toplink.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder.java:439)
         at oracle.toplink.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder.java:389)
         at oracle.toplink.queryframework.ObjectLevelReadQuery.buildObject(ObjectLevelReadQuery.java:511)
         at oracle.toplink.queryframework.ReadObjectQuery.executeObjectLevelReadQuery(ReadObjectQuery.java:433)
         at oracle.toplink.queryframework.ObjectLevelReadQuery.executeDatabaseQuery(ObjectLevelReadQuery.java:874)
         at oracle.toplink.queryframework.DatabaseQuery.execute(DatabaseQuery.java:674)
         at oracle.toplink.queryframework.ObjectLevelReadQuery.execute(ObjectLevelReadQuery.java:835)
         at oracle.toplink.queryframework.ReadObjectQuery.execute(ReadObjectQuery.java:397)
         at oracle.toplink.internal.sessions.AbstractSession.internalExecuteQuery(AbstractSession.java:2260)
         at oracle.toplink.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1074)
         at oracle.toplink.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1058)
         at oracle.toplink.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1017)
         at oracle.toplink.internal.sessions.AbstractSession.readObject(AbstractSession.java:2822)
         at oracle.toplink.workbench.mappingsio.legacy.PersistenceTools50.readMWProjectNamed(PersistenceTools50.java:323)
         at oracle.toplink.workbench.mappingsio.legacy.LegacyIOFacade.read50Project(LegacyIOFacade.java:21)
         at oracle.toplink.workbench.mappingsio.ProjectReader.readLegacyProject(ProjectReader.java:248)
         at oracle.toplink.workbench.mappingsio.ProjectReader.read(ProjectReader.java:104)
         at oracle.toplink.workbench.mappingsio.ProjectIOManager.read(ProjectIOManager.java:59)
         at oracle.toplink.workbench.mappingsplugin.MappingsPlugin.open(MappingsPlugin.java:289)
         ... 5 more
    Caused by: java.lang.reflect.InvocationTargetException
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at oracle.toplink.internal.descriptors.MethodAttributeAccessor.setAttributeValueInObject(MethodAttributeAccessor.java:174)
         at oracle.toplink.mappings.DatabaseMapping.setAttributeValueInObject(DatabaseMapping.java:1228)
         at oracle.toplink.mappings.DatabaseMapping.readFromRowIntoObject(DatabaseMapping.java:1118)
         at oracle.toplink.internal.descriptors.ObjectBuilder.buildAttributesIntoObject(ObjectBuilder.java:277)
         at oracle.toplink.sdk.SDKAggregateObjectMapping.buildCompositeObject(SDKAggregateObjectMapping.java:58)
         at oracle.toplink.mappings.foundation.AbstractCompositeObjectMapping.valueFromRow(AbstractCompositeObjectMapping.java:231)
         at oracle.toplink.mappings.DatabaseMapping.readFromRowIntoObject(DatabaseMapping.java:1117)
         at oracle.toplink.internal.descriptors.ObjectBuilder.buildAttributesIntoObject(ObjectBuilder.java:277)
         at oracle.toplink.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder.java:582)
         at oracle.toplink.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder.java:439)
         at oracle.toplink.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder.java:389)
         at oracle.toplink.queryframework.ObjectLevelReadQuery.buildObject(ObjectLevelReadQuery.java:511)
         at oracle.toplink.queryframework.ReadObjectQuery.executeObjectLevelReadQuery(ReadObjectQuery.java:433)
         at oracle.toplink.queryframework.ObjectLevelReadQuery.executeDatabaseQuery(ObjectLevelReadQuery.java:874)
         at oracle.toplink.queryframework.DatabaseQuery.execute(DatabaseQuery.java:674)
         at oracle.toplink.queryframework.ObjectLevelReadQuery.execute(ObjectLevelReadQuery.java:835)
         at oracle.toplink.queryframework.ReadObjectQuery.execute(ReadObjectQuery.java:397)
         at oracle.toplink.internal.sessions.AbstractSession.internalExecuteQuery(AbstractSession.java:2260)
         at oracle.toplink.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1074)
         at oracle.toplink.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1058)
         at oracle.toplink.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1017)
         at oracle.toplink.internal.sessions.AbstractSession.readObject(AbstractSession.java:2822)
         at oracle.toplink.workbench.mappingsio.legacy.PersistenceTools50.readMWProjectNamed(PersistenceTools50.java:323)
         at oracle.toplink.workbench.mappingsio.legacy.LegacyIOFacade.read50Project(LegacyIOFacade.java:21)
         at oracle.toplink.workbench.mappingsio.ProjectReader.readLegacyProject(ProjectReader.java:248)
         at oracle.toplink.workbench.mappingsio.ProjectReader.read(ProjectReader.java:104)
         at oracle.toplink.workbench.mappingsio.ProjectIOManager.read(ProjectIOManager.java:59)
    Caused by: java.lang.IllegalArgumentException: missing database platform named: null
         at oracle.toplink.workbench.platformsmodel.DatabasePlatformRepository.platformNamed(DatabasePlatformRepository.java:334)
         at oracle.toplink.workbench.mappingsmodel.db.MWDatabase.setDatabasePlatformNameForTopLink(MWDatabase.java:1013)
         at oracle.toplink.workbench.mappingsmodel.db.MWDatabase.legacySetDatabasePlatformNameForTopLink(MWDatabase.java:1133)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at oracle.toplink.internal.descriptors.MethodAttributeAccessor.setAttributeValueInObject(MethodAttributeAccessor.java:174)
         at oracle.toplink.mappings.DatabaseMapping.setAttributeValueInObject(DatabaseMapping.java:1228)
         at oracle.toplink.mappings.DatabaseMapping.readFromRowIntoObject(DatabaseMapping.java:1118)
         at oracle.toplink.internal.descriptors.ObjectBuilder.buildAttributesIntoObject(ObjectBuilder.java:277)
         at oracle.toplink.sdk.SDKAggregateObjectMapping.buildCompositeObject(SDKAggregateObjectMapping.java:58)
         at oracle.toplink.mappings.foundation.AbstractCompositeObjectMapping.valueFromRow(AbstractCompositeObjectMapping.java:231)
         at oracle.toplink.mappings.DatabaseMapping.readFromRowIntoObject(DatabaseMapping.java:1117)
         at oracle.toplink.internal.descriptors.ObjectBuilder.buildAttributesIntoObject(ObjectBuilder.java:277)
         at oracle.toplink.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder.java:582)
         at oracle.toplink.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder.java:439)
         at oracle.toplink.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder.java:389)
         at oracle.toplink.queryframework.ObjectLevelReadQuery.buildObject(ObjectLevelReadQuery.java:511)
         at oracle.toplink.queryframework.ReadObjectQuery.executeObjectLevelReadQuery(ReadObjectQuery.java:433)
         at oracle.toplink.queryframework.ObjectLevelReadQuery.executeDatabaseQuery(ObjectLevelReadQuery.java:874)
         at oracle.toplink.queryframework.DatabaseQuery.execute(DatabaseQuery.java:674)
         at oracle.toplink.queryframework.ObjectLevelReadQuery.execute(ObjectLevelReadQuery.java:835)
         at oracle.toplink.queryframework.ReadObjectQuery.execute(ReadObjectQuery.java:397)
         at oracle.toplink.internal.sessions.AbstractSession.internalExecuteQuery(AbstractSession.java:2260)
         at oracle.toplink.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1074)
         at oracle.toplink.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1058)
         at oracle.toplink.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1017)
         at oracle.toplink.internal.sessions.AbstractSession.readObject(AbstractSession.java:2822)
         at oracle.toplink.workbench.mappingsio.legacy.PersistenceTools50.readMWProjectNamed(PersistenceTools50.java:323)
         at oracle.toplink.workbench.mappingsio.legacy.LegacyIOFacade.read50Project(LegacyIOFacade.java:21)
         at oracle.toplink.workbench.mappingsio.ProjectReader.readLegacyProject(ProjectReader.java:248)
         at oracle.toplink.workbench.mappingsio.ProjectReader.read(ProjectReader.java:104)
         at oracle.toplink.workbench.mappingsio.ProjectIOManager.read(ProjectIOManager.java:59)
         at oracle.toplink.workbench.mappingsplugin.MappingsPlugin.open(MappingsPlugin.java:289)
         at oracle.toplink.workbench.framework.internal.FrameworkApplication.open(FrameworkApplication.java:689)
         at oracle.toplink.workbench.framework.internal.FrameworkNodeManager.openCallback(FrameworkNodeManager.java:341)
         at oracle.toplink.workbench.framework.internal.RunnableProjectLoader.run2(RunnableProjectLoader.java:76)
         at oracle.toplink.workbench.framework.internal.RunnableProjectLoader.run(RunnableProjectLoader.java:63)
         at java.lang.Thread.run(Thread.java:595)
    Sree

    Hi Sree,
    If you could email me a copy of the whole mapping workbench project, I can probably fix this issue for you.
    Thanks,
    Les

  • Diff b/w msg mapping and interface mapping

    hi
      i have some doubt's:
       1. diff b/w msg mapping and interface mapping
       2. What is product in SLD? usually who creates the product,technical,business system??
    thx in advance..

    hI Smartsoft General User  ,
    The following r excellent websites on mapping which differentiate msg mapping and interface mapping in detail:
    Excellent PDF Document on Mapping
    http://help.sap.com/bp_bpmv130/Documentation/Operation/MappingXI30.pdf
    Mapping Development with the ABAP Workbench
    http://help.sap.com/saphelp_nw04/helpdata/en/10/5abb2d9df242f6a62e22e027a6c382/content.htm
    ABAP Mappings
    http://help.sap.com/saphelp_nw04/helpdata/en/ba/e18b1a0fc14f1faf884ae50cece51b/content.htm
    how to create a flat file out of an IDoc-XML by means of an ABAP mapping program and the J2EE File Adapter.
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/46759682-0401-0010-1791-bd1972bc0b8a
    How to Use ABAP Mapping in XI 3.0
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/e3ead790-0201-0010-64bb-9e4d67a466b4
    These r excellent websites in SLD:
    How To…Handle the SLD for SAP XI
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/9e76e511-0d01-0010-5c9d-9f768d644808
    How To…Handle Caches in SAP XI 3.0
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/1a69ea11-0d01-0010-fa80-b47a79301290
    http://www.sap-press.de/download/dateien/751/sap_press_exchange_infra_engl.pdf
    cheers!
    gyanaraj
    ****Pls reward points if u find this helpful

  • New problem  --  My java code can't see my CLASSES from Mapping Workbench

    Donald and others -
    I am VERY new to TopLink......
    I was at the last Oracle Developer Days in Northern Virginia. Donald convinced me and my co-workers to use TopLink for our upcoming project. I have been having tons of problems getting it to work correctly. Maybe I need a TOPLINK license plate, like Donald!!!
    Here is my newest problem. I can create a DatabaseSession, login to it, write a query and log out of it.
    However, I can only do this if I remove my classes from the Mapping Workbench. As soon as I add even one class to the Mapping Workbench......I get an error as follows:
    LOCAL EXCEPTION STACK:
    EXCEPTION [TOPLINK-3007] (TopLink - 9.0.3 (Build 423)): oracle.toplink.exceptions.ConversionException
    EXCEPTION DESCRIPTION: The object [mil.usa.lbit.isr.TestIsr], of class [class java.lang.String], could not be converted to [class java.lang.Class]. Please ensure that the class [class java.lang.Class] is on the CLASSPATH. You may need to use alternate API passing in the appropriate class loader as required, or setting it on the default ConversionManager
    INTERNAL EXCEPTION: java.lang.ClassNotFoundException: mil.usa.lbit.isr.TestIsr
    Can anyone tell me where I need to put my class files so the java code can see them via the ISR.xml deployment file.
    I currently have these files in a .jar file on the system path and in my web-inf folder and in my project settings. I put them everywhere I could think of, but no luck.
    Here is my code:
    package mil.usa.lbit.isr;
    import mil.usa.lbit.LbitColors;
    import java.util.*;
    import java.math.*;
    import oracle.toplink.sessions.*;
    import oracle.toplink.tools.schemaframework.*;
    import oracle.toplink.exceptions.*;
    import oracle.toplink.expressions.*;
    import oracle.toplink.queryframework.*;
    import oracle.toplink.tools.workbench.*;
    public class TestIsr extends ISR {
    public DatabaseSession session;
         public Project project;
    public TestIsr() {
    this.name = "TestISR";
    this.color = LbitColors.AMBER;
    this.metric = 97.00;
    public boolean isConnected() {
    if (session == null)
    System.out.println("Not Connected");
    return false;     
    System.out.println("Connected");
    return session.isConnected();
    public void loginToDatabase() {
    Project builderProject;
    System.out.println("Attempt to login to database using TopLink:");
    project = XMLProjectReader.read("C:\\LBIT TopLink\\ISR\\ISR.xml");
    session = project.createDatabaseSession();
    session.login();
    System.out.println("Logged in");
    public void runQuery() {
    ExpressionBuilder builder = new ExpressionBuilder();
    Expression expression = builder.get("isr_id").equal(3);
    System.out.println(expression);          
    //TestIsr isr = (TestIsr) session.readObject(TestIsr.class, expression);
    //System.out.println(isr);     
    public void logoutOfDatabase() {
    session.logout();     
    System.out.println("Logged out");          
    public static void main(String[] args) {     
    TestIsr testing = new TestIsr();
    testing.isConnected();     
    testing.loginToDatabase();          
    testing.isConnected();
    testing.runQuery();
    testing.logoutOfDatabase();     
    Thanks in advance.
    Donald please email me and maybe we can chat on the phone if you want to offer some help.
    Andy

    Thanks for the reply!
    However, I did try to implement that yesterday.
    When I add the "getClass().getClassLoader()" to the "XMLProjectReader.read" call, the codes loses site of my project (.xml) file.
    Here is the new line:
    project = XMLProjectReader.read("C:\\LBIT TopLink\\ISR\\ISR.xml", getClass().getClassLoader());
    Here is the new error:
    EXCEPTION [TOPLINK-7099] (TopLink - 9.0.3 (Build 423)): oracle.toplink.exceptions.ValidationException
    EXCEPTION DESCRIPTION: Could not find xml project file which is specified in properties file: xmlProjectFile=C:\LBIT TopLink\ISR\ISR.xml.
         oracle.toplink.exceptions.ValidationException oracle.toplink.exceptions.ValidationException.projectXMLNotFound(java.lang.String, java.lang.Exception)
         oracle.toplink.sessions.Project oracle.toplink.tools.workbench.XMLProjectReader.read(java.lang.String, java.lang.ClassLoader)
    But my code could find that file before I added the "getClass().getClassLoader()" code.
    Maybe I can avoid this problem by "deploying the XML file in my application jar?" Could you please explain more about this option after answering the first part of my question.
    Any other posters feel free to help me too.
    I know TopLink is a powerful tool, I just keep hitting these hurdles. ARRRRRRRGGGG!!!
    Thanks again,
    Andy

  • Mapping Workbench 9.0.4.5 Queries Tab

    I'm looking for documentation on how I can use this screen (The Queries tab on the Descriptor) to modify Toplink behaviar via the mapping workbench.
    If I were really strong on building Toplink mappings outside of the worbench, this might be obvious. So far, we have stayed within the confines of the mapping workbench.
    Thanks

    Robert,
    The most common usage of this tab is to graphically define named queries. These queries define parameter based queries using TopLink expressions, EJB QL, or SQL.
    http://download-west.oracle.com/docs/cd/B10464_01/web.904/b10316/dscriptr.htm#1041139
    Using this will allow you to minimize the amount of query code you need to write and maintain. This further reduces coupling of the persistence layer from to application and provides better diagnostics on queries. As you mappings change any queries that are broken by changes can be indicated versus having to find the query issue at runtime.
    To execute the queries in see 'Named Queries' at:
    http://download-west.oracle.com/docs/cd/B10464_01/web.904/b10313/queries.htm#1128980
    Doug

Maybe you are looking for