Address not mapped to object

It comes from alert.log:
Errors in file /opt/oracle/OraHome1/admin//bdump/owps_s001_29137.trc:
ORA-07445: exception encountered: core dump [ioc_kprbrct()+72] [SIGSEGV] [Address not mapped to object] [0x4] [] []
We use OSE to generate HTML pages.
Why is the database dumped sometimes ?

It's an OS error. The core dump or trace file will contain information telling you want it was doing and what went wrong. Quite often they map to bugs.
Normally these things require Oracle support to diagnose although sometimes we can figure it out for ourselves.
Cheers, APC

Similar Messages

  • DG Observer triggering SIGSEGV Address not mapped to object errors in alert log

    Hi,
    I've got a Data Guard configuration using two 11.2.0.3 single instance databases.  The configuration has been configured for automatic failover and I have an observer running on a separate box.
    This fast-start failover configuration has been in place for about a month and in the last week, numerous SEGSEGV (address not mapped to object) errors are reported in the alert log.  This is happening quite frequently (every 4/5 minutes or so).
    The corresponding trace files show the process triggering the error coming from the observer.
    Has anyone experienced this problem?  I'm at my wits end trying to figure out how to fix the configuration to eliminate this error.
    I must also note that even though this error is occurring a lot, it doesn't seem to be affecting any of the database functionality.
    Help?
    Thanks in advance.
    Beth

    Hi..   The following is the alert log message, the traced file generated, and the current values of the data guard configuration.  In addition, as part of my research, I attempted to apply patch 12615660 which did not take care of the issue.  I also set the inbound_connection_timeout parameter to 0 and that didn't help either.  I'm still researching but any pointer in the right direction is very much appreciated.
    Error in Alert Log
    Thu Apr 09 10:28:59 2015
    Exception [type: SIGSEGV, Address not mapped to object] [ADDR:0x9] [PC:0x85CE503, nstimexp()+71] [flags: 0x0, count: 1]
    Errors in file /u01/app/oracle/diag/rdbms/<db_unq_name>/<SID>/trace/<SID>_ora_29902.trc  (incident=69298):
    ORA-07445: exception encountered: core dump [nstimexp()+71] [SIGSEGV] [ADDR:0x9] [PC:0x85CE503] [Address not mapped to object] []
    Use ADRCI or Support Workbench to package the incident.
    See Note 411.1 at My Oracle Support for error and packaging details.
    Thu Apr 09 10:29:02 2015
    Sweep [inc][69298]: completed
    Trace file:
    Trace file /u01/app/oracle/diag/rdbms/<db_unq_name>/<SID>/trace/<SID>_ora_29902.trc
    Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
    With the Partitioning and Oracle Label Security options
    ORACLE_HOME = /u01/app/oracle/product/11.2.0.3/dbhome_1
    System name:    Linux
    Node name:      <host name>
    Release:        2.6.32-431.17.1.el6.x86_64
    Version:        #1 SMP Wed May 7 14:14:17 CDT 2014
    Machine:        x86_64
    Instance name: <SID>
    Redo thread mounted by this instance: 1
    Oracle process number: 19
    Unix process pid: 29902, image: oracle@<host name>
    *** 2015-04-09 10:28:59.966
    *** SESSION ID:(416.127) 2015-04-09 10:28:59.966
    *** CLIENT ID:() 2015-04-09 10:28:59.966
    *** SERVICE NAME:(<db_unq_name>) 2015-04-09 10:28:59.966
    *** MODULE NAME:(dgmgrl@<observer host> (TNS V1-V3)) 2015-04-09 10:28:59.966
    *** ACTION NAME:() 2015-04-09 10:28:59.966
    Exception [type: SIGSEGV, Address not mapped to object] [ADDR:0x9] [PC:0x85CE503, nstimexp()+71] [flags: 0x0, count: 1]
    DDE: Problem Key 'ORA 7445 [nstimexp()+71]' was flood controlled (0x6) (incident: 69298)
    ORA-07445: exception encountered: core dump [nstimexp()+71] [SIGSEGV] [ADDR:0x9] [PC:0x85CE503] [Address not mapped to object] []
    ssexhd: crashing the process...
    Shadow_Core_Dump = PARTIAL
    ksdbgcra: writing core file to directory '/u01/app/oracle/diag/rdbms/<db_unq_name>/<SID>/cdump'
    Data Guard Configuration
    DGMGRL> show configuration verbose;
    Configuration - dg_config
      Protection Mode: MaxPerformance
      Databases:
        dbprim - Primary database
        dbstby - (*) Physical standby database
      (*) Fast-Start Failover target
      Properties:
        FastStartFailoverThreshold      = '30'
        OperationTimeout                = '30'
        FastStartFailoverLagLimit       = '180'
        CommunicationTimeout            = '180'
        FastStartFailoverAutoReinstate  = 'TRUE'
        FastStartFailoverPmyShutdown    = 'TRUE'
        BystandersFollowRoleChange      = 'ALL'
    Fast-Start Failover: ENABLED
      Threshold:        30 seconds
      Target:           dbstby
      Observer:         observer_host
      Lag Limit:        180 seconds
      Shutdown Primary: TRUE
      Auto-reinstate:   TRUE
    Configuration Status:
    SUCCESS
    DGMGRL> show database verbose dbprim
    Database - dbprim
      Role:            PRIMARY
      Intended State:  TRANSPORT-ON
      Instance(s):
        DG_CONFIG
      Properties:
        DGConnectIdentifier             = 'dbprim'
        ObserverConnectIdentifier       = ''
        LogXptMode                      = 'ASYNC'
        DelayMins                       = '0'
        Binding                         = 'optional'
        MaxFailure                      = '0'
        MaxConnections                  = '1'
        ReopenSecs                      = '300'
        NetTimeout                      = '30'
        RedoCompression                 = 'DISABLE'
        LogShipping                     = 'ON'
        PreferredApplyInstance          = ''
        ApplyInstanceTimeout            = '0'
        ApplyParallel                   = 'AUTO'
        StandbyFileManagement           = 'MANUAL'
        ArchiveLagTarget                = '0'
        LogArchiveMaxProcesses          = '4'
        LogArchiveMinSucceedDest        = '1'
        DbFileNameConvert               = ''
        LogFileNameConvert              = ''
        FastStartFailoverTarget         = 'dbstby'
        InconsistentProperties          = '(monitor)'
        InconsistentLogXptProps         = '(monitor)'
        SendQEntries                    = '(monitor)'
        LogXptStatus                    = '(monitor)'
        RecvQEntries                    = '(monitor)'
        SidName                         = ‘<sid>’
        StaticConnectIdentifier         = '(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=<db host name>)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=<service_name>)(INSTANCE_NAME=<sid>)(SERVER=DEDICATED)))'
        StandbyArchiveLocation          = 'USE_DB_RECOVERY_FILE_DEST'
        AlternateLocation               = ''
        LogArchiveTrace                 = '0'
        LogArchiveFormat                = '%t_%s_%r.dbf'
        TopWaitEvents                   = '(monitor)'
    Database Status:
    SUCCESS
    DGMGRL> show database verbose dbstby
    Database - dbstby
      Role:            PHYSICAL STANDBY
      Intended State:  APPLY-ON
      Transport Lag:   0 seconds
      Apply Lag:       0 seconds
      Real Time Query: ON
      Instance(s):
        DG_CONFIG
      Properties:
        DGConnectIdentifier             = 'dbstby'
        ObserverConnectIdentifier       = ''
        LogXptMode                      = 'ASYNC'
        DelayMins                       = '0'
        Binding                         = 'optional'
        MaxFailure                      = '0'
        MaxConnections                  = '1'
        ReopenSecs                      = '300'
        NetTimeout                      = '30'
        RedoCompression                 = 'DISABLE'
        LogShipping                     = 'ON'
        PreferredApplyInstance          = ''
        ApplyInstanceTimeout            = '0'
        ApplyParallel                   = 'AUTO'
        StandbyFileManagement           = 'AUTO'
        ArchiveLagTarget                = '0'
        LogArchiveMaxProcesses          = '4'
        LogArchiveMinSucceedDest        = '1'
        DbFileNameConvert               = ''
        LogFileNameConvert              = ''
        FastStartFailoverTarget         = 'dbprim'
        InconsistentProperties          = '(monitor)'
        InconsistentLogXptProps         = '(monitor)'
        SendQEntries                    = '(monitor)'
        LogXptStatus                    = '(monitor)'
        RecvQEntries                    = '(monitor)'
        SidName                         = ‘<sid>’
        StaticConnectIdentifier         = '(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=<db host name>)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=<service_name>)(INSTANCE_NAME=<sid>)(SERVER=DEDICATED)))'
        StandbyArchiveLocation          = 'USE_DB_RECOVERY_FILE_DEST'
        AlternateLocation               = ''
        LogArchiveTrace                 = '0'
        LogArchiveFormat                = '%t_%s_%r.dbf'
        TopWaitEvents                   = '(monitor)'
    Database Status:
    SUCCESS

  • ORA-07445 : address not mapped to object

    Using a ODBC connection to database server to retrieve database
    schema information. Basically running queries against sys.all
    type tables.
    Rec'd ORA-07445: exception encountered : core dump [Kxspoac( ) +
    6969] [SIGSERGV] [Address not mapped to object] [1]
    Is this a user object lock out issue or just a ODBC and client
    configuration or a serious system issue?
    any input would be appreciated.

    I know the documentation is not as good as it could be but you can still see that your code doesn't look like the example given. Specifically, java is case sensitive, so it should be "write" not "WRITE" and the unix wildcard is * not -.
    Cheers, APC

  • Exception [type: SIGSEGV, Address not mapped to object]

    Hi,
    I'm working on an Oracle Database 11g Release 11.1.0.6.0 - 64bit Production With the Real Application Clusters option.
    I'm trying to execute the below:
          SELECT /*+ CURSOR_SHARING_EXACT */
                 vc.id_vehicle, gr.geoRouteId, g.name, round(g.length) length_, gr.active,
                 g.id_user id_user_georoute_owner, gr.grBindUserId id_user_bind_owner,
                 (SELECT count(*) FROM dual WHERE XMLEXISTS('$XML_ALM/user/alarmwhen[@direction="out"]' passing gr.geoRouteUser AS "XML_ALM") = 1) alm_out
            FROM configurator.t_vehicle_configuration vc, dispatch.v_georoute g,
                 xmltable('$XML/vehicleconf/GeoRoute/geoRoute[@active="1"]'
                   passing vc.x_configuration AS "XML"
                   columns geoRouteId   number  path '@id',
                           active       number  path '@active',
                           grBindUserId number  path '@id_user',
                           geoRouteUser xmltype path 'user'
                 ) gr
           WHERE vc.id_vehicle = 453
             AND g.id_georoute = gr.geoRouteId;but after few seconds I got the error in the object.
    The alert log says:
    +Exception [type: SIGSEGV, Address not mapped to object] [ADDR:0x38] [PC:0x483CEFD, evahtr()+495]+
    Errors in file /u01/app/oracle/diag/rdbms/evodb/EVODB2/trace/EVODB2_ora_13769.trc  (incident=301686):
    +ORA-07445: exception encountered: core dump [evahtr()+495] [SIGSEGV] [ADDR:0x38] [PC:0x483CEFD] [Address not mapped to object] []+
    Incident details in: /u01/app/oracle/diag/rdbms/evodb/EVODB2/incident/incdir_301686/EVODB2_ora_13769_i301686.trc
    The trace doesn't say more:
    +ORA-07445: exception encountered: core dump [evahtr()+495] [SIGSEGV] [ADDR:0x38] [PC:0x483CEFD] [Address not mapped to object] []+
    +========= Dump for incident 301686 (ORA 7445 [evahtr()+495]) ========+
    ----- Beginning of Customized Incident Dump(s) -----
    +Exception [type: SIGSEGV, Address not mapped to object] [ADDR:0x38] [PC:0x483CEFD, evahtr()+495]+
    The strange stuff is that if I remove the
    (SELECT count(*) FROM dual WHERE XMLEXISTS('$XML_ALM/user/alarmwhen[@direction="out"]' passing gr.geoRouteUser AS "XML_ALM") = 1) alm_out
    from the query, there is no problem.
    Do you have any suggestion?
    Thanks in advance,
    Samuel

    The strange stuff is that if I remove the
    (SELECT count(*) FROM dual WHERE XMLEXISTS('$XML_ALM/user/alarmwhen[@direction="out"]' passing gr.geoRouteUser AS "XML_ALM") = 1) alm_out
    from the query, there is no problem.That's probably because you're not using XMLExists correctly.
    The function returns a boolean value so you don't need to test for 1 or 0 as we had to with existsNode function before :
    http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28369/xdb04cre.htm#sthref360
    It's also probably better to use a CASE expression instead of a subquery :
    SELECT /*+ CURSOR_SHARING_EXACT */
           vc.id_vehicle
         , gr.geoRouteId
         , g.name
         , round(g.length) length_
         , gr.active
         , g.id_user id_user_georoute_owner
         , gr.grBindUserId id_user_bind_owner
         , case when XMLExists('$XML_ALM/user/alarmwhen[@direction="out"]' passing gr.geoRouteUser AS "XML_ALM")
                then 1
                else 0
           end as alm_out
    FROM configurator.t_vehicle_configuration vc
       , dispatch.v_georoute g
       , xmltable('$XML/vehicleconf/GeoRoute/geoRoute[@active="1"]'
                   passing vc.x_configuration AS "XML"
                   columns geoRouteId   number  path '@id',
                           active       number  path '@active',
                           grBindUserId number  path '@id_user',
                           geoRouteUser xmltype path 'user'
         ) gr
    WHERE vc.id_vehicle = 453
    AND g.id_georoute = gr.geoRouteId
    ;Even better, you can test the condition directly in the COLUMNS clause with fn:exists XPath function.
    For example, something like this :
    SQL> with sample_data as (
      2    select xmltype('<root>
      3  <row><item>1</item><other id="a"/><other id="x"/></row>
      4  <row><item>2</item><other id="b"/></row>
      5  <row><item>3</item><other id="b"/></row>
      6  </root>') doc
      7    from dual
      8  )
      9  select x.*
    10  from sample_data t
    11     , xmltable(
    12         '/root/row'
    13         passing t.doc
    14         columns item number path 'item',
    15                 flag number path 'exists(other[@id="x"])'
    16       ) x
    17  ;
          ITEM       FLAG
             1          1
             2          0
             3          0

  • SIGSEGV, Address not mapped to object] [ADDR:0x38]

    Hi
    I am running Oracle Database 11g Release 11.2.0.1.0 - 64bit on Centos 5.9 64bit. The machine has 128GB RAM and 600GB SAS drives.
    I daily get following in my alert.log and my database stops running queries.
    Exception [type: SIGSEGV, Address not mapped to object] [ADDR:0x38] [PC:0x2503528, pfrln0itinit()+60] [flags: 0x0, count: 2]
    Fri Aug 09 04:57:21 2013
    Sweep [inc][104359]: completed
    Sweep [inc][104358]: completed
    Fri Aug 09 08:35:49 2013
    PMON failed to acquire latch, see PMON dump
    Fri Aug 09 08:36:49 2013
    PMON failed to acquire latch, see PMON dump
    Fri Aug 09 08:38:19 2013
    PMON failed to acquire latch, see PMON dump
    Fri Aug 09 08:39:19 2013
    Some parameters are:
    SQL> show parameter sga
    NAME     TYPE VALUE
    lock_sga     boolean FALSE
    pre_page_sga     boolean FALSE
    sga_max_size     big integer 12G
    sga_target     big integer 12G
    SQL> show parameter memory
    NAME     TYPE VALUE
    hi_shared_memory_address     integer 0
    memory_max_target     big integer 0
    memory_target     big integer 0
    shared_memory_address     integer 0
    cat /proc/sys/kernel/shmmax
    68719476736
    cat /proc/sys/kernel/shmall
    16777216
    I don't have Oracle support contract therefore cannot contact them for help. Can someone please help?
    Habib

    Habib wrote:
    It is doing the same problem just after we put this into production about 3 weeks ago. The machine is hosted at a datacenter and they don't provide Oracle Linux or Red Hat.
    From where I sit you have only two alternatives.
    1) live it what you have now.
    2) pay for a support license & upgrade to supported OS & patched Oracle version
    Nobody here can provide any remedy for what ails this combination.

  • Problem 2950 arp address not mapped to a destination port

    I have a problem loosing connectivity to some switch connected directly to my 2950.
    I have the mac address in the arp table but when not working the mac-address is not linked to any port in the show mac-address table.
    Please help

    I think this could be simply a question of aging. The ARP tables are aged out after 4 hours. By contrast, the entries in the MAC forwarding tables are aged out after 5 minutes. All it means is that the host has not sent any frames to or through this particular switch in the last 5 minutes.
    There can be other explanations, but they are rare. For example, if your host is actually a service address in a WLBS cluster configured in unicast mode, then the host will source its frames from a different address from the address it gives in response to an ARP request.
    Another is if you have port security configured with a timeout shorter than your ARP table. You may have reached the maximum permitted MAC addresses. That would also account for your intermittent connectivity.
    But, as I said, these are very particular cases.
    Kevin Dorrell
    Luxembourg

  • Specified Host Directory does not map to your Site Address

    I have defined my site using ftp in the Dreamweaver site definitions and I can connect to it and upload changes with no problem. I am now trying to setup InContext editing capability to the site. When I go thru the steps to add a site in the InContext Admin section, the first steps in the process work fine.  I am able to fill out the ftp settings with my username and password and when I test the settings it comes back that it is able to connect to the site.  The next step is where I run into problems.  When I try to add the assets I get an error that says "The Specified Host Directory does not map to your Site Address".  I can use the same username and password with an ftp Client program and I have complete access to the root folder and all the files in it.  I have used exactly the same Host DIrectory in both my Dreamweaver Remote Setup and in InContext Admin.  Why does it work with Dreamweaver uploads and it can not be used to register in InContext?
    My site is www.sonautosales.com and my root folder is defined as /www.sonautosales.com/
    I have included a screenshot of the error message.

    Hi Corey:
    I just went thru the entire thread trying all the suggestions but 
    still no luck.  The closest I come to getting this registered is using 
    the following settings.
    ftp host:               ftp.prioritysalesandservice.com
    Passive ftp:          unchecked
    Username:          prioritysales
    Password:          ****          (I do not mind sending you the password if it will 
    help you solve my problem)
    This tests good all the time.
    Host Directory:     /www.prioritysalesandservice.com/          (This is the folder 
    name that contains my website and in it is the index.html page)
    Image Directory:     Images/                                        (the folder name inside the host 
    directory that contains my images)
    Default Page:     Default.htm Default.asp index.html index.htm index.php 
    index.cfm
    I think the host directory I am using because when I put that in and 
    then use the browse button to find the Image directory it shows all 
    the files and folders in my Host directory
    The website address is:     www.prioritysalesandservice.com
    Please let me know anything else you need, again I have tried all the 
    things mentioned in the thread and by using these settings I get the 
    following error when I save:
    The specified Host Directory does not map to your Site Address (URL)
    THe "/www.prioritysalesandservice.com/" host directory could not be 
    accessed through this Site Address (URL):
    "http://www.prioritysalesandservice.com/"
    Thanks for you help, hope you can figure it out.
    Steve

  • DisplayAuthor managed property does not map to any crawl property, why?

    I just discovered the out of box  - DisplayAuthor managed property does not map to any crawl property, why is that? but it is still working fine when using this property as a refiner.....how does this work?

    Hi,
    The DisplayAuthor managed property is different. It is  multi-valued  but has no crawled properties mapped to it. However, it represents multiple authors for a document. There is the author that is stored with the properties of a document such
    as a pdf this is the original creator of the document, and then there is the SharePoint author of the document which is the the person who uploaded the document. So basically you can search on both using the DisplayAuthor.
    Besides, here is a similar post, you can use as a reference:
    https://social.msdn.microsoft.com/Forums/office/en-US/bdf5d8dc-0511-492c-8f51-9cd541cf70bd/what-does-the-displayauthor-value-in-the-search-refinement-json-object-represent?forum=sharepointsearch
    Best Regards,
    Lisa Chen
    Forum Support
    Please remember to mark the replies as answers if they help and unmark them if they provide no help. If you have feedback for TechNet Subscriber Support, contact
    [email protected]
    Lisa Chen
    TechNet Community Support

  • Contacts address not showing on pad

    When I add the following address (not mine) :
    5 Disa Hill Close
    Knysna
    WC
    South Africa
    and click on it, the map app launches, but dpit finds the wrong address ...it gives 2 suggestions, but they are both incorrect.
    If I click cancel, and immediately click 'search' on the search bar, the address is found every time.
    I trust this is enough information for you to replicate my problem and to assist in the solving it.
    Many thank,
    Sprogget

    thanks, you solved myproblem.  i looked in utilities and there it was.  what a strange place to put it

  • Blaze DS - Mapping java object into another java application

    Good afternoon,
    I realized a Client-Server application. Server is Java-based. Client is Flex. Server services are accessible through Blaze DS.
    Now I have some Java clients that need to access server services. Blaze DS permits to do it simply but I don't know how to map java objects as I do using [RemoteClass(alias.....)] construct at Actionscript side.
    For example, server sends a MyObjectType and client receives an ASObject.
    Is there a way to map java MyObjectType automatically at destination?
    Thank you for help and sorry for poor english.
    Regards, Francesco

    xstream will convert any given java object to xml. Not sure what support it offers for schemas.
    http://xstream.codehaus.org/

  • Why can't Siri locate contact addresses for map directions?

    Having an issue with iphone 4s using Siri for locating addresses saved within contacts for map directions.
    The problem is only evident on about half of the contacts so far..  the message i get is 'I couldn't find an address for .." even though the contact I asked for clearly has their address saved.  I've doubled checked I've used the right address fields and seem fine.
    I'm unable to distinguine the problem between the contacts where Siri works as it should and locate the address, and the ones it can't - including my home address. 
    Very frustating when I want directions in the car for driving and using hands free.
    Any ideas guys?!

    It seems to be a bug in the software. Other people have said it may have so something to do with siri not understanding UK postcodes properly.  I don't really know but I seem to have found a solution, although cumbersome.
    -Load up your contact from phonebook app
    -Tap the address (apple maps should go straight to it)
    -Double tap home and switch back to phonebook app
    -Delete the address
    -Diuble tap back into maps (the pin point should still be there)
    -Press the little blue arrow on the pin
    -Add to contacts > Existing contact
    -Select contact
    (Now this is the important bit)
    -Tap edit then tap the right hand column off the address section in order to set it as home, work, etc.
    -Done
    Phew!!
    It's long winded I know, but now I can just tell siri to get directions to so and so's home safely while driving without fiddling around tapping buttons.
    Sort it out Apple. It should 'Just Work' outside of the US too you know.

  • Home address not shown correctly

    Hello all,
       I just got my first iPhone today, the iPhone 4s, very happy I am.
       I also have an iPad 2 both have a similar issue.
       In my contact card I have my home address as
    84 Beaconhurst Drive
    Beacon Bay
    East London
    5241
    South Africa
    When I search for this address in maps, the maps more or less finds my address, albeit about 2 km out.  However when I click the address on my address card it just slaps a pin in the middle of East London, and does the same for my work address, and any other address I have tried.
    When I add a point to a map and try add that to my contact, all that comes up is Eastern Cape, East London.
    This leaves me with two problems
    1   When I Ask siri what is the weather for tomorrow, I am told, there is no weather for eastern cape, south Africa, despite the fact that the weather app is picking up my location.
    2.  When I tell Siri, remind me to xxx when I arrive at home, I am told Siri does not know where my home is.
    Please help me ASAP, cause that feature is something I have been looking forward to, since I saw the ads.
    Thanx

    the problem isn't your iPhone - apple uses google maps to determine your location and secondly Siri location based services doesn't play 100% nicely in SA yet - it does work - mine does in Cape Town - weather, location based reminders etc.
    try adding your location/s manually to your iPhone by using Maps and then using your address book to add those locations and then try the location based reminders again - might work.

  • Mapping an object using values from multiple tables

    Is it possible to use values looked up in other tables when mapping an object?
    For example: I have three tables. In table 1, I have fields for 'cityCode' and 'stateCode'. Table 2 is a state table which contains a list of stateCodes and corresponding stateIds. Table 3 is a city table with cityCodes listed by stateId (the city code is unique within the stateId but can be duplicated under other stateIds). Table 3 also contains the cityName for the matching cityCode/stateId pair.
    I am ultimately trying to match a cityName to a cityCode. I can't figure out how to tell toplink use the stateId returned when mapping Table 1 to Table 2 via stateCode when mapping cityCode in Table 1 to Table 3.
    Any help is greatly appreciated
    --matt                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

    What does your object model look like, do you have a single object with data from all three tables in it?
    <p>
    In general because the cardinality of the tables and usage does not match, I would not recommend using multiple tables to map this. Instead define a CityNameManager class that preloads and stores all of the city names for each state, (possible lazy initializing each set of cities per state). Your getCityName() method in your class would then just use this manager.
    <p>
    You could map the multiple tables but it may be difficult, and would most likely need to be read-only because I don't think you want to insert into the table2 or 3. You basically have a foreign key table1.stateCode => table2.stateCode, (table1.cityCode, table2.stateId) => (table3.cityCode, table3.stateId). You probably cannot define this in the Mapping Workbench, so would need to use the ClassDescriptor code API and an amendment method. If you can't get the foreign keys to work you can always use the descriptor multipleTableJoinExpression and define the join directly.
    <p>
    You could also define a OneToOneMapping to the CityName from your object using the cityCode and using a selectionCriteria() on your mapping to provide an expression that uses the getTable() method to join to the intermediate table.
    <p>
    <p>---
    <p>James Sutherland

  • Convert Map String, Object to Map String,String ?

    How can I convert a map say;
    Map<String, Object> map = new Map<Striing, Object>();
    map.put("value", "hello");
    to a Map<String,String>.
    I want to pass the map to another method which is expecting Map<String,String>.
    Thanks

    JoachimSauer wrote:
    shezam wrote:
    Because im actaully calling an external method to populate map which returns <String, Object>.Now we're getting somewhere.
    Oh wait, no, we're not! We're back to my original reply:
    What do you want and/or expect to happen if one of the values isn't actually a String object but something else?Nothing like a bit of confusion :). They are and always will be String objects.
    So this external method, call it external1 for now returns a Map<String, Object>, I then want to pass this map to another external method external2 which takes Map <String,String> as a parameter.

  • Convert Map String, Object   to    Map Object, Object

    is there any way to convert a map of type Map<String, Object> to a map of type Map<Object, Object>? I tried casting it did not work

    You can also take the long way around:
        Map<Object, Object> map = (Map<Object, Object>)buildMapObject(
          new String[] { "1", "2", "3" },
          new Object[] { new Integer(1), new Integer(100), new Integer(1000) });
      public Object buildMapObject(String[] s, Object[] o) {
        Map<String, Object> map = new HashMap<String, Object>();
    // Populate map from arguments
        return map;
      }Though why you'd want to do that is beyond me.

Maybe you are looking for