XSLT Vs Data Mapper.

Hi,
What will be the difference between Siebel Data Mapper and XSLT ? One of the difference that I have identified is that XSLT's can be used to convert one XML to other without the need to have an IO defined like in data mapper.
Apart from this I have failed to recognize any major difference.
Please share if any one of you have any other difference which can help decide when do we go for XSLT ?
Thanks :-)

Hello,
I found a workaround to the problem :-) you need to close JDeveloper and relaunch it. The linking of the two sides is then possible.
Jon

Similar Messages

  • Help XSLT Data Mapper and Transformations

    Hi guys,
    I need help in oracle ESB (XSLT Data Mapper and Transformations). I need to use the XSLT Data Mapper and Transformations using Response XML to Request XML.
    Thanks
    Vyas

    The concept is the same as BPEL. Without going into too much detail have a look at the folowing tutorial.
    http://download.oracle.com/docs/cd/B31017_01/integrate.1013/b28212/buildendtoend.htm#BEICEFJD
    Near the bottom they show how to do transformations.
    cheers
    James

  • Data Mapper to relational database

    I've been reading the "Patterns of Enterprise Application Architecture" book and it has opened my mind to a lot of different designs.
    I'm trying to design a large accounting system in OO. I'm unclear on how I should design the mapping inbetween the domain logic and database.
    Should the controller classes talk to the data mappers?
    In inheritance if my classes don't directly relate to tables should I have one data mapper or one for each class?
    When I'm using a data mapper and I select all from a table does the mapper create multiple objects or does it return a result set?
    If it creates multiple objects how does the domain logic sort this data?
    Do I really need a Unit of Work to manage my data mappers? How hard are they to create? Is there only one Unit of Work class for all data mappers?

    I've been reading the "Patterns of Enterprise
    Application Architecture" book and it has opened my
    mind to a lot of different designs.Usually the worst time to apply the stuff, because you're looking to use it before you really understand. But there must be a first time for everything. Great book, though.
    I'm trying to design a large accounting system in OO.Wow, is this for personal education or a paid gig? I hope it's the former. If not, make sure that "build versus buy" is part of the decision. Would anybody write an accounting package in this day and age, with SAP, Oracle, QuickBooks, Great Plains, and a thousand others ready to buy?
    I'm unclear on how I should design the mapping
    inbetween the domain logic and database.
    Should the controller classes talk to the data mappers?Depends on what you call controllers. I like to think of them as the classes that implement the service interfaces. The methods in the service interface are the use cases. I think the distinction between controller and service is very important, because a web-based app will certainly have a controller. If you fall into the trap of putting all the logic into that class, you can't use it WITHOUT the web controller. It also puts you right in line to turn this into a service oriented architecture.
    The services will certainly call the persistence interface. Make sure you have one.
    In inheritance if my classes don't directly relate to
    tables should I have one data mapper or one for each
    class?That's one way to do it.
    When I'm using a data mapper and I select all from a
    table does the mapper create multiple objects or does
    it return a result set?I think it ought to return a Collection of objects. You should never return a ResultSet. That should be instantiated and closed within the scope of the persistence layer. ResultSets are database cursors, a scarce resource. They should be kept open for the shortest time and scope possible.
    If it creates multiple objects how does the domain logic sort this data?You won't ask for all of them unless you have something sensible to do with them. If you're referring to the literal "sort", it's an easier question. Have the database do an ORDER BY in the SELECT. Hard to tell what you mean by this.
    Do I really need a Unit of Work to manage my data mappers? You do if you need ACID properties for transactions.
    So you're going to try to do all of this by hand? A hard job, indeed. You're talking about writing your own transaction manager.
    How hard are they to create? Is there only
    one Unit of Work class for all data mappers?I haven't read Fowler's book in a while, and I don't have it handy, but it's one Unit of Work per transaction when I think about the term. What you need is something that will demark transaction boundaries.
    If you weren't writing this yourself, you'd be using JTA (Java Transaction Architecture.) That's what I'd recommend that you do.
    But if this is an educational effort, knock yourself out.
    %

  • Data Mapper in JDeveloper no working in Linux

    Hello,
    I am working through the SOADEMO and have reached 4.9.3 - 8.(e) where I am trying to use the data mapper but when I click and drag imp1:First to imp1:fname I do not see the line appear when moving the cursor accross the screen as I have seen it under Windows? I am unable to join the two fields.
    What am I doing wrong? I have been scratching my head and cannot see my mistake.
    Please highlight I mistake?
    Thanks in advance.
    Jon

    Hello,
    I found a workaround to the problem :-) you need to close JDeveloper and relaunch it. The linking of the two sides is then possible.
    Jon

  • Siebel Data Mapper issue

    Hi everyone,
    I have a requirement to map two external IO's using the declarative Data Map. Further on the mapping for one integration component in the source IO has to be conditioned on whether it has or not children. If the children are present they get mapped if not the parent is mapped. How to do this? Sounds silly, but I have tried Search Spec and Precondition at the component level but it does not seem to work. Using xslt would be no brainer, but the client sticks to the Data Maps.
    Anyone having the same issue ?
    Thanks for your input,

    Hi,
    Try to use EAI Dispatch Service for your requirement. You can check hierarchy of the message in different ways and invoke different maps, based on your rules.
    This service is documented in Bookshelf.
    Regards.

  • XSLT  -- Generating data @ run-time

    Hi.
    I'm using xalan to translate one xml document into another. However, the result of the xml document contains a required element of type dateTime.
    This dateTime value is supposed to represent the dateTime at processing/run time.
    Does anyone know how to generate dateTime @ run-time? I've checked the xpath functions and I didn't see anything for the dateTime at run-time.
    In an xml book, I found the following for oracle's date:
    <xsl:stylesheet version="1.0"
    xmlns:date="http://www.oracle.com/XSL/Transform/java/java.util.Date">
    <xsl:value-of select="date:toString(date:new())"/>
    But this is in a format specific for oracle. How do I get something into the xml's dateTime format?
    Thanks in advance!
    --S.

    XML does not have any date format.and the date you get from oracles site is standard date string that would be returned when ever new Date() is called.
    First you need to determine which date format u need.then there are multiple approaches to get the results.
    1.get the date string in xslt variable and the using xsl:string,and substring and other string functions parse it to the required format
    2.Second you need to write your own java class that will return a date in the required format and define it just as u did above for xslns:date = "/path/path/to.ur class">
    and then use it exactly the way u already have...
    cheers
    Hope this helps
    Khalid

  • XSLT Java Enahancement Mappping

    Hi All
    I would like to know the clear steps of implementing the mapping through "XSLT Java Enhancement", FYI i was working with Graphical mapping itself, but i want to implement through XSLT Java Enahancement mapping.
    More Thankful, if any once can help me out.
    Regards
    Shailaja

    Hi Shailaja,
    Please go through
    <a href="/people/pooja.pandey/blog/2005/06/27/xslt-mapping-with-java-enhancement-for-beginners Mapping With JAVA Enhancement ( For Beginners)</a> which we will clearly help you understand your need.
    Also go thru these links and they will also surely help you in all ways:
    <a href="http://help.sap.com/saphelp_nw04/helpdata/en/55/7ef3003fc411d6b1f700508b5d5211/content.htm">XSLT Mapping with Java Enhancement</a>
    <a href="http://help.sap.com/saphelp_nw04/helpdata/en/73/f61eea1741453eb8f794e150067930/content.htm">XSLT Mapping</a>
    <a href="http://help.sap.com/saphelp_nw04/helpdata/en/4c/b2ad3de2d76b3be10000000a114084/content.htm">Imported Archives (XSLT/Java)</a>
    Regards,
    abhy
    Note: please do award points for helpful answers.
    Message was edited by: Abhy Thomas

  • XSLT mapping for 856 question

    Ramesh,
    I hate to keep bugging everyone but i have another question.
    I am trying to transform data into an X-12 856 document (outbound). I have most of the looping and everything working. My only issue is how do you handle the parent child relationships in the HL01/02 ? Since xpath does not let you increment a variable how can you keep the count of the HL loops let alone tell the HL02 (parent's HL01) We are using a SOPI scenario and the items need to be subordinate to the appopriate pack level.
    I really appreciate all the time and awnsers you have given me so far :)
    Thank you in advance,
    Jaden

    Is there a tutorial on how to use the XSLT Data Mapper? I can't seem to find it, I'm using JDeveloper 11g preview 2. I ran the studio version 10.1.3.1.0, but I can't find it either.
    I found a document on XSLT Data Mapper, but it seems like they are for WSDL mapping. Is it possible to map between two XMLs/XSD?
    http://download.oracle.com/docs/cd/E10291_01/doc.1013/e10295/xslt_mpr.htm#BABBCIAI

  • Target XML attribute with XSLT

    Hello,<br />I have an xml file which looks like this:<br /><br /><PRODUCTS><br /><PRODUCT><br /><IMAGE href="file://./0001.tif"></IMAGE><br /></PRODUCT><br /><PRODUCT><br /><PRODUCTS><br /><br />Is there a way to target the href attribute of the PRODUCT element with XSLT?<br /><br />Thanks

    hi marco,
    > Thank you gregor, I'll take a look to this reference; I'm total newby to
    > XSLT, so any suggestions would be surely fine.. another question: do you
    > think it's better to work with XSLT or XmlRules?
    there is no short answer on this. it depends on your documents/data you
    want to process, what to achieve and you're knowledge in scripting vs.
    xslt. i use xmlRules for styling my documents, xslt for data transformation.
    in general you've got more control, especially over the rendered
    document, using xmlRules. if you want to process layout rules/guidelines
    in dependency of the actual document you have to render it first.
    complex data transformation and composition is better with xslt outside
    of indesign. i prefer to prepare my data (select relevant data,
    numbering, ...) with xslt.
    cheers,
    gregor

  • SRM Business Content

    Hi All,
    I would like to know the infosource of 0SR_C01 procurement overview(aggregated) cube. while on help.sap it shows 0SR_MC01 as a multiprovider for 0SR_C01. But could not find the infosource for the same.
    I would also like to know if anyone has the list of content infocubes and their infosources for SRM. Please share it with me.
    Thank in Advance
    Niren

    Hi ,
    for all business content, you can start here
    http://help.sap.com/saphelp_nw04s/helpdata/en/3d/5fb13cd0500255e10000000a114084/frameset.htm
    scm
    http://help.sap.com/saphelp_nw04s/helpdata/en/29/79eb3cad744026e10000000a11405a/frameset.htm
    and bi best practice
    http://help.sap.com/bp_biv335/BI_EN/html/bw.htm
    Check this link for SRM Business Content information: http://help.sap.com/saphelp_nw2004s/helpdata/en/3a/7aeb3cad744026e10000000a11405a/frameset.htm
    DataSources
    New DataSources have been created for NW 2004s BI Content Add-On 2 and SRM 5.0. These are described here, along with their extraction logic.
    The following graphic shows the data flow from the DataSources to the DataStore objects
    Structure
    Each DataSource has an extraction structure and a data extractor. Generally, this is an RFC-capable function module.
    There are two types of extraction: Specific extraction and generic extraction:
    Specific extraction is strongly oriented towards the data model of the BI System and the necessary extract structure. It executes DataSource-specific processing steps.
    The logic contained within the generic extraction is implemented centrally and can therefore be reused by the specific extraction modules. The generic extraction deals with access to the SRM database and is similar for each DataSource.
    Generic and specific extraction
    Extraction logic in detail
    Data extraction involves the following six function modules:
    InitLoad
    InitLoad is called as soon as an initial upload is started in the BI System. In other words, it is executed when data is loaded into the BI System for the first time. The module can restrict the data extraction according to filter criteria that were defined in BI during extraction (for example, extract the data for a particular timeframe). InitLoad packages the data before it is transferred to the BI System.
    DeltaLoad
    DeltaLoad is called when a document is modified in the SRM System. The module writes data that has accumulated since the initial loading to a delta queue.
    Data Collector
    The Collector reads the required data from the database in the source system. For performance reasons, the data is then buffered in system-internal tables. The tables have the same structure as in the database. This saves time and effort, because data conversion is kept to a minimum.
    Data Consolidator
    The Consolidator groups data that belongs together from a business point of view. The consolidated data is stored in internal tables and is prepared for further processing.
    Data Normalizer
    The Denormalizer prepares the source data for the BI System. It calculates key figures that are required for the report but are not contained on the database and converts data types in the source system to data types of the BI System. Depending on the BI data model, the system now decides how each row is filled with data.
    Data Mapper
    During mapping of the data, the system defines which fields of the denormalized data structure are assigned to the fields of the extract structure. In this way, flat and one-dimensional lines are generated from the data.
    The following table shows the technical names of the function modules of the individual DataSources:
    Description
    0SRM_TD_PO
    0SRM_TD_CF
    0SRM_TD_IV
    0SRM_TD_PO_ACC
    InitLoad
    BBP_BI_PO_EXTRACT
    BBP_BI_CF_EXTRACT
    BBP_BI_IV_EXTRACT
    BBP_BI_PO_ACC_EXTRACT
    Collector
    BBP_BI_GEX_COLLECT
    BBP_BI_GEX_COLLECT
    BBP_BI_GEX_COLLECT
    BBP_BI_GEX_COLLECT
    Consolidator
    BBP_BI_GEX_CONSOLIDATE
    BBP_BI_GEX_CONSOLIDATE
    BBP_BI_GEX_CONSOLIDATE
    BBP_BI_GEX_CONSOLIDATE
    Denormalizer
    BBP_BI_GEX_DENORMALIZE
    BBP_BI_GEX_DENORMALIZE
    BBP_BI_GEX_DENORMALIZE
    BBP_BI_GEX_DENORMALIZE
    Mapper
    BBP_BI_PO_MAP
    BBP_BI_CF_MAP
    BBP_BI_IV_MAP
    BBP_BI_PO_ACC_MAP
    DeltaLoad
    BBP_BI_DELTA_UPDATE
    BBP_BI_DELTA_UPDATE
    BBP_BI_DELTA_UPDATE
    BBP_BI_DELTA_UPDATE
    Hope this helps,
    Regards
    CSM Reddy

  • ECC 6.0 : XPRA for SAPKA70019 fails

    During support package implementation of SAPKA70019 the final step XPRA GENERATION fails with :
    1 ETP199X######################################                                                                            
    1 ETP162 EXECUTION OF REPORTS AFTER PUT                                                                               
    1 ETP101 transport order     : "SAPKA70019"                                                                               
    1 ETP102 system              : "DB1"                                                                               
    1 ETP108 tp path             : "tp"                                                                               
    1 ETP109 version and release : "372.05.38" "700"                                                                           
    1 ETP198                                                                               
    2 EPU126XPost-import methods for change/transport request: "SAPKA70019"                                                    
    4 EPU111    on the application server: "mucbaa"                                                                          
    2 EPU122XPost-import method "ENHS_AFTER_IMPORT" started for "ENHS" "L", date and time: "20110630235315"                    
    3 EPU182 Post-processing for &2"ENHS" &3"CRM_IC_PROF_DETERM_BADI" was already performed successfully earlier&1"R3TR"       
    3 EPU123 Post-import method "ENHS_AFTER_IMPORT" completed for "ENHS" "L", date and time: "20110630235315"                  
    2 EPU122XPost-import method "O2_XSLT_AFTER_IMPORT" started for "XSLT" "L", date and time: "20110630235315"                 
    3 EPU182 Post-processing for &2"XSLT" &3"UWS_SRG_REPORTING_ITEMS" was already performed successfully earlier&1"R3TR"       
    3 EPU123 Post-import method "O2_XSLT_AFTER_IMPORT" completed for "XSLT" "L", date and time: "20110630235315"               
    2 EPU122XPost-import method "SFW_AFTERIMPORT" started for "SFBF" "L", date and time: "20110630235315"                      
    A3 ESFW 053 There are no switch BC sets to activate                                                                        
    A3 ESFW 087 "0" enhancements to be passed to ENHO_AFTER_IMPORT                                                             
    A3 ESFW 028 BAdI SFW_SWITCH_CHANGED for switch "JVA" called; start time "235315"                                           
    1AETR012XProgram terminated (job: "RDDEXECL", no.: "23531500")                                                             
    1AEPU320 See job log"RDDEXECL""23531500""DB1"                                                                               
    1 ETP162 EXECUTION OF REPORTS AFTER PUT                                                                               
    1 ETP110 end date and time   : "20110630235330"                                                                            
    1 ETP111 exit code           : "12"                                                                               
    The job log of corresponding RDDEXECL says : Invalid fieldformat (webdynpro error )
    Actions like /$SYNC, restart etc.. did not help.
    Any idea ?
    Moderator message: not directly related to ABAP development, please have a look in the SAP Netweaver forums.
    Edited by: Thomas Zloch on Jul 1, 2011 9:26 AM

    Hi,
    Login with OSS and select Downloads -> Entry by Application Group ->
    Installations and Upgrades" ->P Application Components" SAP ERP" SAP ERP 6.0
    I can able to see only AIX on oracle, hope with your OSS ID you can view AS 400 and DB2.
    With Regards,
    Krishna.

  • Execution of scripts was prohibited. Use the XsltSettings.EnableScript property to enable it

    Hi,
    I have created a custom field in SharePoint 2010. I have a xsl file which does the Xslt rendering for item display in list view. I need to add some C# code to the xslt code. So i included code as below:
    1)
    xml:user="urn::my-scripts" in the xsl:stylesheet tag.
    2)
    <msxsl:script language="C#" implements-prefix="user">
        <msxsl:assembly name="System.Web"/>
        <msxsl:using namespace="System.Web"/><![CDATA[public string GetDate(string DateFormat){return DateTime.Now.ToString(DateFormat);}]]>
      </msxsl:script>
    3) And used it in the code as
    <xsl:value-of select="user:GetDate('dddd, dd MMMM yyyy')"/>
    But, i get an error saying:
    Execution of scripts was prohibited. Use the XsltSettings.EnableScript property to enable it. An error occurred at C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\template\layouts\xsl
    Since its a custom field, i have only the XML file to declare the custom field and the XSLT to render it, when it comes to displaying in a list item view. 
    Though in some scenario's the XmlTransform class is used to set the XsltSettings.EnableScript
    property through a C# code file, here it doesn't seem to be feasible.
    Is there a way to set the EnableScript property in the XSLT or XML ? Or any other ways ? 

    Hi Elena,
    The issue is caused by XSLT is not script enabled by default.  Please provide XsltSettings in the loading to fix the issue. For more information, please see:
    http://daomingworks.wordpress.com/2009/12/11/xslt-transform-data-error-use-the-xsltsettings-enablescript-property-to-enable-it/
    Thanks,
    Jinchun Chen
    Jinchun 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 tnmff AT microsoft.com(Please replace AT with @)

  • SBOP PC 7.5 NW installation error

    Hi All,
    I am instralling SBOP PC 7.5 NW and have hit an error.  Can anyone offer any assistance please?
    Hardware: Wintel x64 Windows 2008 Server.
    Error in phase: XPRA_EXECUTION SAPK-750AGINCPMBPC
    Errors occurred during post-handling AFTER_IMP_NROB for NROB L
    ================================================================
    Support Package levels
    SPAM 701/0039
    Component Release SP-Level Support Package Short description of the
    component
    SAP_ABA 701 0007 SAPKA70107 Cross-Application
    Component
    SAP_BASIS 701 0007 SAPKB70107 SAP Basis Component
    PI_BASIS 701 0007 SAPK-70107INPIBASIS Basis Plug-In
    SAP_BW 701 0007 SAPKW70107 SAP Business Warehouse
    BI_CONT 703 0016 SAPKIBIIQ6 Business Intelligence
    Content
    ================================================================
    Logs:
    Support/Installation Package
    SAPK-750AGINCPMBPC CPMBPC 750: Add-On Installation
    HBD System HBD
    Generate Transport Information File 09.08.2010
    21:06:14 (0) Successfully Completed
    Import Request Piece List 09.08.2010
    21:06:23 (0) Successfully Completed
    Test Import 09.08.2010
    21:06:43 (4) Ended with Warning
    Import ABAP Dictionary Objects 09.08.2010
    21:08:29 (4) Ended with Warning
    ABAP Dictionary Activation 09.08.2010
    21:09:17 (4) Ended with Warning
    Import 09.08.2010
    21:16:42 (4) Ended with Warning
    Method Execution 10.08.2010
    18:21:03 (8) Ended with errors
    09.08.2010 21:17:14 (8) Ended with errors
    09.08.2010 21:26:46 (8) Ended with errors
    10.08.2010 18:21:03 (8) Ended with errors
    Import steps not specific to transport request
    SAPK-750Z1INCPMBPC CPMBPC 750: CRT for SAPKW70106
    HBD System HBD
    Generate Transport Information File 09.08.2010
    21:06:16 (0) Successfully Completed
    Import Request Piece List 09.08.2010
    21:06:24 (0) Successfully Completed
    Test Import 09.08.2010
    21:06:45 (0) Successfully Completed
    Import ABAP Dictionary Objects 09.08.2010
    21:08:32 (0) Successfully Completed
    ABAP Dictionary Activation 09.08.2010
    21:09:17 (4) Ended with Warning
    Import 09.08.2010
    21:16:45 (0) Successfully Completed
    Method Execution 09.08.2010
    21:17:15 (0) Successfully Completed
    Import steps not specific to transport request
    ======================================================================
    Error Logs:
    Execution of programs after import (XPRA)
    Transport request : SAPK-750AGINCPMBPC
    System : HBD
    tp path : tp
    Version and release: 376.01.13 701
    Post-import methods for change/transport request: SAPK-750AGINCPMBPC
    Post-import method TRINT_AFTER_IMP_NSPC started for NSPC L, date and
    time: 20100810182103
    Post-import method ENHS_AFTER_IMPORT started for ENHS L, date and
    time: 20100810182103
    Post-import method ENHO_AFTER_IMPORT started for ENHO L, date and
    time: 20100810182103
    Post-import method O2_XSLT_AFTER_IMPORT started for XSLT L, date and
    time: 20100810182103
    Post-import method AFTER_IMP_NROB started for NROB L, date and time:
    20100810182103
    2EENR397UThe subobject value table "UJJ_JRNTMPL_INFO" contains invalid
    key fields
    2EENR893INumber range object "UJJ_JRNID" " "
    Errors occurred during post-handling AFTER_IMP_NROB for NROB L
    AFTER_IMP_NROB belongs to package SZN
    The errors affect the following components:
    BC-SRV-NUM (Number Range Management)
    Post-import method AFTER_IMP_NROB completed for NROB L, date and time:
    20100810182103

    Applied note 1484591 as instructed by SAP and this fixed the problrm

  • MVC JSP and Servlets

    I'm creating JSP pages to represent the view of the site and servlets to get the request and decide which JSP page to load next.
    When the servlet recibes a request it generally has to query the database to get some data and then show it back to the client. To do this the servlet calls other object that is responsible to query the database and fill a ResultSet.
    My question is: what is better, to load a Vector with special objects containing the data in the ResultSet and then return this vector to the jsp page for it to use it, or may a return directly the ResultSet to the jsp page? With the first option I have to cycle in the resultSet to load the vector and then cycle through the vector to show the results. With the second option I cycle only once, but I isolate from the database (column names, order in which the things are returned...)
    I hope anybody can give me an opinion.
    Thanks

    There are a few things wrong with this:
    1) MVC -> The View should have no Model work init.
    For the MVC pattern, the database is Model. Use
    a
    a ResultSet in JSP, and now your View is lockedto
    a
    database with a specific column format.
    Huh? I think that's backwards. The View willalmost
    always require Model data unless it is a staticpage.
    The Model, however, should be agnostic about what
    t View technology it serves. (The Controllerbridges
    the two). Also, I would call the database the
    Persistence or Integration tier, a separateconcept
    from the Model, though intimately coupled to it.I meant the work of the model (gathering the data to
    a presentable form) is moved to the View. Yes, the
    View needs to know the Model to be able to display
    its data. But the Model should handle the data
    collection.
    Fair enough. I might have read it backwards as well.
    >>
    2) Any web application (or any application in
    general) wether it uses MVC or not, should still
    follow a 3 tier approach: Persistance (Data),Domain
    (logic), Presentation (View, output) (note, thisis
    different then MVC.) By moving the ResultSet inthe
    JSP you would be dragging the Persistancemechanism
    up two layers. Generally, a layer should only
    see
    the layer just below it (Presentation seesDomain.
    Domain sees Persistance. Persistance never sees
    s Domain or Presentation. Domain never sees
    Presentation. Presentation never seesPersistance).
    >
    I agree that Persistence and View should not seeeach
    other. However, Model and Persistence must. How
    else do you write a DAO? Or even use a mapperlike
    Hibernate?First the Model doesn't fit into just one of the
    three tiers (Persistance Domain and Presentation).
    The Model of MVC is both the Domain logic and the
    e Persistance mechanism.
    To me, at least, Domain logic = model. The terms I have normally read is either "business tier" or "model domain". "Patterns of Enterprise Application Architecture", M. Fowler. Though, I will concede that this tier has the least well defined set of terms.
    But for the three tier architecture: the domain sees
    the persistance. You always see one layer down. So
    Domain sees the persistance and pulls the data into
    the model. So a DAO would be part of the Domain, the
    logic of collecting the data from the database to be
    used in the application (in the correct object graph
    and all that). The persistance though, doesn't see
    the domain.
    Hmm, I'm not sure which direction 'down' is. And even if 'down' meant towards the back-end or away from it, what about the controller? It parses view requests and delegates them to the model. The results are then normally returned to the controller for dispatch to a view. So, the controller seems to have its fingers in all the tiers except integration and persistence, at least to me. I think of the controller as the 'middle man' between model and view that lets the model be agnostic to the view. The view and controller will to some extent always be coupled. However, the model theoretically exists on its own.
    Half of me thinks that I have a different view on
    where the Domain and Persistance border is. I
    thought the DAO or the Data Mapper would be in the
    Domain, whereas you seem to be saying they are in the
    Persistance layer?
    That's interesting. I don't know if there is an absolute answer. We are dealing with the O/R boundary, and the DAO straddles the boundary. However, one could, at least theoretically, change persistence strategies. What would change? Not your model objects, but your persistence tier objects. Though, again, the definition is nebulous.
    3) From a Practical matter:
    In many DBs, if you close the connection fromwhich
    the ResultSet was derived, the ResultSet is
    closed
    and you get errors if you try to access it. Ifyou
    don't close the connection in the Servlet beforeyour
    JSP, then you have to do it in the JSP. Thatmeans
    even more DB bleed through to the JSP, and theM->V.
    Or, you could just not close the Connection and
    d allow it to hang around and create memory
    leaks.
    >
    Yepper.
    4) Also practical:
    To use the ResultSet in JSP is going to require
    scriptlet code. This is ugly and hard to manageand
    update later. You have to wrap your code in
    try{}catch(SQLException e) {} finally {}, so
    the
    code is even uglier and harder to manage(especially
    if you end up not touching the thing for monthsand
    forget what you had done - or god forbid someoneelse
    has to keep up your code). You could make acustom
    tag to handle it, which makes the JSP easier toread,
    but does further damage of spreading the dataaccess
    code all over the application.
    Definitely!
    5) Practical:
    When you do this sort of thing, then later
    decide
    to
    change the way the database is set up, digging
    all
    the places affected by the simple renaming of a
    column, or refactoring of which columns are inwhich
    tables becomes a heavy effort. Keep it all in a
    DataAccessObject, and changes in DB becomestrivial
    to keep track of in your code. It is all in one
    place, and can be tested off line. Harder stillis
    if you change persistance from a database to anXML
    library, or some directory lookup or something.You
    would have to completely refactor your Servlet
    and
    your JSP. Put it in a DataAccessObject and allyou
    have to do is switch out the DAO instance. The
    change is transparent to the Servlet and the JSPas
    long as you maintain an interface.
    Just keep in mind that for the vast majority of
    projects, the RDBMS technology is rarely switched.I
    generally program to interfaces in my Model, butmy
    Persistence tier is always so tightly coupled thatI
    simply use POJO's without an interface.
    6) Practical:
    I have elluded to this several times, but I will
    state it specifically. When you isolate the
    persistance and data access to its own layer
    then
    you
    can swap out the presentation (the View and the
    Controller) when testing all your persistance
    operations. This means the data is independent
    of
    the container. You can run it out of theServlet/JSP
    environment and it will behave EXACTLY as it
    will
    inside the JSP environment. You can designrobust
    tests, debug, redesign, re-edit, etc... muchquicker.
    Then, when all done, plug it into your web app
    p without worry.
    Great point.
    Of course, Numbers 3 -> 6 are the reasons why
    following 1->2 (MVC and the 3 Tier architecture)are
    such good ideas.- Saish
    BTW, please take all the above just in the interest of having a good discussion. I have been wrong many times before! ;^)
    - Saish

  • Invalid XPath ?

    I have a process that gets a date (format YYYY-MM-DD; forced by Console), which has to be delivered to a Webservice, that requests dates in format 'dd MMM yyyy' (24 aug 2005).
    I've tried the following options (in an Assign):
    <copy>
      <from variable="inputVariable" part="payload" query="ora:formatDate('/client:bpAanvraagProcessRequest/client:DatumBemonstering', 'dd MMM yyyy')"/>
      <to variable="addAanvraag_addaanvraag_InputVariable" part="pDbg"/>
    </copy>And:
    <copy>
      <from variable="inputVariable" part="payload" query="xp20:format-dateTime(/client:bpAanvraagProcessRequest/client:DatumBemonstering,'[dd] [MMM] [YYYY]')"/>
       <to variable="addAanvraag_addaanvraag_InputVariable" part="pDbg"/>
    </copy>Both fail with the following message:
    [Error ORABPEL-10076]: invalid xpath query string 
    [Description]: in line 68 of "L:\workspaces\BPEL\bpAanvraag\bpAanvraag.bpel", According to BPEL4WS spec 1.1, section 14.3,
    the xpath query "ora:formatDate('/client:bpAanvraagProcessRequest/client:DatumBemonstering', 'dd MMM yyyy')" is invalid,
    query should be an absolute location path and it must start from the root element prefixed with "/".. 
    [Potential fix]: Please make sure that your xpath query starts with "/" which is the root..Anyone has any ideas how to fix this?

    Okey, found it:
    The format-string is an XSLT 2.0 picture string, see syntax explained at http://www.w3.org/TR/xslt20/#date-picture-string
    By the way:
    a) w3.org publishes the function xslt:format-date(), and format it by picture. This is not offered by Oracle BPEL it seems (at least not through the Expression builder, ver 10.1.2.0.0 ).
    Oracle-BPEL offers:
    b) ora:formatDate(), and format it by java.text.SimpleDateFormat.
    c) xp20:format-dateTime(), and format it by picture.
    So I took it away by code like:
    <copy>
    <from expression="xp20:current-dateTime()"/>
    <to variable="myDateTime"/>
    </copy>
    <copy>
    <from expression="'P21D'"/>
    <my-xml-comment>The Xpath syntax (like P21D) is for specifying an xdt:dayTimeDuration of 21 days ahead, see http://www.w3.org/TR/xpath-functions/#lexical-dayTimeDuration</my-xml-comment>
    <to variable="myDuration"/>
    </copy>
    <copy>
    <from expression="xp20:add-dayTimeDuration-to-dateTime( bpws:getVariableData('myDateTime'), bpws:getVariableData('myDuration') )"/>
    <to variable="myResultTime"/>
    </copy>
    <copy>
    <from expression="xp20:format-dateTime( bpws:getVariableData('myResultTime'), '[Y0001][M01][D01]' )"/>
    <to variable="myResultTimeNOARK"/>
    </copy>

Maybe you are looking for

  • HT2292 How can I get my ipod classic to show up in devices in itunes?

    I need help.  My Ipod classic does not show up in devices.   I go to device manager and it does not show up. help

  • Safari 3 Leapard behaving badly

    hello I am somewhat old on PCs but new to APPLE so please bare with me. I just have my first Apple Imac and used to love it. Installed Leapard without a glitch, so I thought. Problem: I have Safari 3 open and Mail open and when I click on certain lin

  • Field Available in result, not in search

    Hi, In my requirement, there is a field available in result, but not in search criteria. Hence: 1. I appended the Zfield in the BOL structure of the search. 2. Got the DDLB value in GET_V_ZFIELD. 3. Displayed the field in config. 4. Wrote the followi

  • Cant create document object

    I create succesfully an object of PDF. Then I call its method "OpenDocument" with parameter containing path and filename of the pdf file I want to open and I receive NULL object and error number 65 538. I checked it several times if it is ok, but I d

  • Is it possible to do lookup without using lookup transformation?

    Could you please brief about data masking transformation..?