AXP API schema

Can anyone tell me what fields / format the "listphonebydesc" request return?
I'm using 4.1(3), it didn't say much on the schema file except just the same as listphonebyname and NO description, I wonder why?
TIA

Sorry, I am new to this AXL thing, do I just type the following at the test SOAP message window
http://www.cisco.com/AXL/1.0" xsi:schemaLocation="http://www.cisco.com/AXL/1.0 http://gkar.cisco.com/schema/axlsoap.xsd" sequence="1234">
SEP%
I want to try with the listPhoneByName request first!
TIA
Best Regards

Similar Messages

  • API schema mapping

    Background info:
    I am using the 'SAPbobsCOM.BoXmlExportTypes.xet_ValidNodesOnly' property on the company object for SAP to retrieve values from SAP BO in xml format.
    To create an object/record in SAP BO for instance the Business Partner master data, the company object property 'XmlExportType' needs to be set to 'SAPbobsCOM.BoXmlExportTypes.xet_ExportImportMode'.
    The related schema structure appears to be the same as for 'xet_ValidNodesOnly', but the element names are different.
    Question:
    Is there an Api object, or help schema available that could explain the mapping of elements from the 'xet_ValidNodesOnly' xml generated to the 'xet_ExportImportMode' xml.
    The 'xet_ValidNodesOnly' is used to query the SAP BO company Db, the the objects provided by SAP BO has to be populated from the xml as per 'xet_ExportImportMode', but there is no means to translate the 2 xml documents to/from each other.
    Any assistance on this would be greatly appreciated.

    Hi Michael, I believe type 1 (xet_ValidNodesOnly) can be used by the ReadXml method. (databrowser) but you are using the GetBusinessObjectFromXML on the company object.
    Of the four methods currently available, 2 and three produce the same "schemas".  I use quotations because they aren't truly schemas or they would start with an "xs:schema" tag at the very least.
    It seems to me as if the first method produces object schemas that are the "old style" or SAP DI-API xml version 1 type which references tables and field names.  With DI-API xml version 2, there was a new layer added that maps between the types. In effect, the translation is done for you. (Check the DI API help file for Extended XML format)
    I think you can co-mingle schemas in your XML import file as long as you set the Adminfo to version 1 or 2 in that section of the schema.
    Anyway, let me know if this helped at all or if you need more info.
    Ty Babcox
    BoXmlExportTypes
    xet_AllNodes  Export to XML all fields (both read only and read/write fields) from the database. (XML files exported using this type cannot be read by the ReadXml method.)  Type 0
    xet_ValidNodesOnly  Export to XML only valid fields that support XML import (read/write fields only) from the database. (XML files exported using this type can be read by the ReadXml method.)  Type 1 
    xet_NodesAsProperties  Export to XML all fields as properties from the database. (XML files exported using this type can be read by the ReadXml method.)  Type 2 
    xet_ExportImportMode  Export to XML only valid fields that support XML import and export (read/write fields only that do not contain null values) from the database. (XML files exported using this type can be read by the ReadXml method.)  Type 3

  • "Best Practice" for a stored procedure that needs to access two schemas?

    Greetings all,
    When my company's application is deployed, two schema owners are typically created and all database objects divided between the two. I'll call them FIRST and SECOND.
    In a standard, vanilla implementation there is never any reason for the two to "talk to each other". No rights to objects in one schema are ever granted to the other.
    I am currently charged, however, with writing custom code to roll up data from one of the schemas and update tables in the other with the rollups. I have created a user whose job it is to run this process, and this user has the proper permissions to all necessary objects in both schemas. I'll call this user MRBATCH.
    Typically, any custom objects, whether they be additional staging tables, temp tables or stored procedures are saved in the FIRST schema. I tried to save this new stored procedure in the FIRST schema and compile it, but got "Insufficient priviliges" errors whenever the code in the stored procedure tried to access any tables in the SECOND schema. This surprised me a little bit because I had no plans to actually EXECUTE the stored procedure as FIRST, but I guess I can understand it from the point of view of, you ought be able to execute something you own.
    So which would be be "better" (assuming there's any difference): Grant FIRST all of the rights it needs in SECOND and save the stored procedure in FIRST, or could I just save the stored procedure in the MRBATCH schema? I'm not sure which would be "better practice".
    Is there a third option I'm overlooking perhaps?
    Thanks
    Joe

    In this case I would put it again into schema THIRD. This is a kind of API schema. There are procedures in it that allow some customized functionality. And since you grant only the right to execute those procedures (should be packages of cause) you won't get into any conflicts about allowing somebody too much.
    Note that this suggestion seems very similiar to putting the procedure directly to the executing user MRBATCH. It depends how this schemauser is used. I always prefer separating users from schemas.
    By definition the oracle object to represent a schema is identical to the oracle object representing a user (exception: externally defined users).
    my definition is:
    Schema => has objects (tables, packages) and uses tables space
    User => has priviledges (including create session and connect) and uses temp tablespace only. Might have synonyms and views.
    You can mix both, but sometimes it makes much sense to separate one from the other.
    Edited by: Sven W. on Aug 13, 2009 9:51 AM

  • Display Template - Assistant PreferredName

    Hi
    I need to customize the people search results hover panel to display the Assistant preferred name. 
    I've already got a custom display template for people item and hover panel in place. I'm currently getting back the assistant using the ManagedPropertyMapping using 'Assistant':['Assistant'] and this displays the assistants' login id domain\username. I'm
    assuming this is correct, as this is what would be stored against the user profile assistant property.
    I need to now display the assistants' PreferredName instead and I'm not sure how to proceed. I'm assuming I need to re-query the people manager to get back the preferred name.
    I can get the preferred name using the api: 
    schema://server/_api/SP.UserProfiles.PeopleManager/GetUserProfilePropertyFor(accountName=@v,propertyName='PreferredName')?@v='domain\username'
    I'm looking for best practice approach to complete this in the display template hover panel.
    Any pointers, guidance or information would be greatly appreciated.
    Kind regard,
    Lee

    Hi,
    According to your post, my understanding is that you wanted to add the PreferredName managed property in the custom people search hover panel.
    To add fields in people search hovel panel, we should modify the Item_Person.html and Item_Person_HovelPanel.html.
    It means, you should modify two place, your custom Item_Person.html page, and Item_Person_HovelPanel.html page.
    Then we should first add the fields in the Item_Person.html. In the ManagedPropertyMapping tag, use the following syntax to add the custom managed properties that you want to display: 
    '<Current item property name>':<Managed property name>'
    Then add your  properties in the Item_Person_HoverPanel.html like below(I use the MobilePhone managed property).
    <div style="color:#000000; display:inline">Mobile Phone:</div>_#=ctx.CurrentItem.MobilePhone=#_<br>
    More reference:http://blogs.technet.com/b/tothesharepoint/archive/2013/09/17/how-to-display-values-from-custom-managed-properties-in-the-hover-panel-in-sharepoint-server-2013.aspx
    Thanks,
    Jason
    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]
    Jason Guo
    TechNet Community Support

  • [plz Help]: error while executing ant build-war

    Hi,
    while running the example of JAX-RPC provided by JWSDP 2.0 i am getting the following error
    so please do help me on this..........
    i am using JWSDP 2.0 and apache-tomcat-5.5.20
    C:\Sun\jwsdp-2.0\jaxrpc\samples\HelloWorld>ant build-war
    Buildfile: build.xml
    init:
         [echo] -------- HelloWorld Sample --------
    prepare:
        [mkdir] Created dir: C:\Sun\jwsdp-2.0\jaxrpc\build\samples\HelloWorld\classe
    s\server
    generate-server:
    edit-config:
    unedit-config:
    compile-server:
        [javac] Compiling 1 source file to C:\Sun\jwsdp-2.0\jaxrpc\build\samples\Hel
    loWorld\classes\server
    create-war:
          [war] Building war: C:\Sun\jwsdp-2.0\jaxrpc\build\samples\HelloWorld\jaxrp
    c-HelloWorld-raw.war
       [delete] Deleting directory C:\Sun\jwsdp-2.0\jaxrpc\build\samples\HelloWorld\
    classes\server
    build-war:
         [echo] -------- HelloWorld --------
    [wsdeploy] command line: -keep -o C:\Sun\jwsdp-2.0\jaxrpc\build\samples\HelloWo
    rld\jaxrpc-HelloWorld.war -verbose C:\Sun\jwsdp-2.0\jaxrpc\build\samples\HelloWo
    rld\jaxrpc-HelloWorld-raw.war -classpath C:\Sun\jwsdp-2.0\jwsdp-shared\lib\mail.
    jar;C:\Sun\jwsdp-2.0\jwsdp-shared\lib\activation.jar;C:\Sun\jwsdp-2.0\jaxp\lib\j
    axp-api.jar;C:\Sun\jwsdp-2.0\jaxp\lib\endorsed\dom.jar;C:\Sun\jwsdp-2.0\jaxp\lib
    \endorsed\sax.jar;C:\Sun\jwsdp-2.0\jaxp\lib\endorsed\xalan.jar;C:\Sun\jwsdp-2.0\
    jaxp\lib\endorsed\xercesImpl.jar;C:\Sun\jwsdp-2.0\jaxrpc\lib\jaxrpc-api.jar;C:\S
    un\jwsdp-2.0\jaxrpc\lib\jaxrpc-spi.jar;C:\Sun\jwsdp-2.0\jaxrpc\lib\jaxrpc-impl.j
    ar;C:\Sun\jwsdp-2.0\saaj\lib\saaj-api.jar;C:\Sun\jwsdp-2.0\saaj\lib\saaj-impl.ja
    r;C:\Sun\jwsdp-2.0\jwsdp-shared\lib\relaxngDatatype.jar;C:\Sun\jwsdp-2.0\jwsdp-s
    hared\lib\xsdlib.jar;C:\Sun\jwsdp-2.0\jwsdp-shared\lib\jax-qname.jar;C:\Sun\jwsd
    p-2.0\apache-ant\lib\ant.jar
    [wsdeploy] info: created temporary directory: C:\DOCUME~1\Nihar\LOCALS~1\Temp\j
    axrpc-deploy-8137cc
    [wsdeploy]
    [wsdeploy] [CustomClassGenerator: Class hello.HelloIF_sayHelloBack_RequestStruc
    t exists. Not overriding.]
    [wsdeploy] [CustomClassGenerator: Class hello.HelloIF_sayHelloBack_ResponseStru
    ct exists. Not overriding.]
    [wsdeploy] [CustomClassGenerator: Class hello.HelloIF_sayHelloBackOneWay_Reques
    tStruct exists. Not overriding.]
    [wsdeploy] [SOAPObjectSerializerGenerator: writing  serializer/deserializer for
    : {http://hello.org/wsdl}sayHelloBack]
    [wsdeploy] [SOAPObjectSerializerGenerator: writing  serializer/deserializer for
    : {http://hello.org/wsdl}sayHelloBackResponse]
    [wsdeploy] [SOAPObjectSerializerGenerator: writing  serializer/deserializer for
    : {http://hello.org/wsdl}sayHelloBackOneWay]
    [wsdeploy] [SOAPObjectBuilderGenerator: writing object builder for: sayHelloBac
    k]
    [wsdeploy] [SOAPObjectBuilderGenerator: writing object builder for: sayHelloBac
    kResponse]
    [wsdeploy] [SOAPObjectBuilderGenerator: writing object builder for: sayHelloBac
    kOneWay]
    [wsdeploy] [SerializerRegistryGenerator: creating serializer registry: hello.He
    lloWorldService_SerializerRegistry]
    [wsdeploy] info: created output war file: C:\Sun\jwsdp-2.0\jaxrpc\build\samples
    \HelloWorld\jaxrpc-HelloWorld.war
    [wsdeploy]
         [echo] Copying jaxrpc-HelloWorld.war to ../../build/../../jaxrpc/samples/He
    lloWorld
         [copy] Copying 1 file to C:\Sun\jwsdp-2.0\jaxrpc\samples\HelloWorld
    BUILD SUCCESSFUL
    Total time: 4 seconds

    First thing, when Jdev does the automatic compilation, then why to bother for an ant script.
    and further as the script output says, check the compiler error log for a detailed information. From the error output you have posted, it seems that framework library files are not on the classpath and hence you are getting the issue.
    --Shiv                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • CMSDK / iFS 9.0.3

    Under iFS version 1.1.x I was told that Oracle does not support more than one iFS schema per Oracle instance. Does this still hold true for CMSDK / iFS 9.0.3? We have a user written application that interacts with the iFS API/schema. We DO NOT use any of the iFS provided protocol servers. We do however run the IfsAgents Server for each iFS schema to maintain / garbage collect in each environment. Will CMSDK / iFS 9.0.3 allow more than one IfsAgent process on a server? I basically want one set of agents per CMSDK/iFS schema installed in one single instance on one server. Does this make sense? Is it possible to do this with the new version of iFS?

    Here are the detailed instructions on how to do it. I hope this will work for you:
    Setting up multiple CM SDK domains on one host
    Introduction
    ============
    The Oracle Content Management SDK (CM SDK) is released as a component of the Oracle 9iAS product suite. Upon installation users can configure the product for use. This by default includes the creation of one CM SDK domain (aka instance) and associated entities. Each of these domains includes a Domain Controller, one set of the CM SDK agents, one or more CM SDK nodes (residing on separate hosts), and one or more CM SDK HTTP nodes (residing on separate hosts).
    It is also possible to configure multiple domains on a single middle-tier host. Each such domain would include one CM SDK node, one HTTP node, a Domain controller and a set of agents. There is only one installation of the CM SDK product, in effect only one set of binaries. The configuration process will permit multiple domains to use the same software. This document outlines the process setup such a configuration.
    A. Installation
    ===============
    Install Oracle iAS 9.0.2 or 9.0.2.0.1 on your machine. The J2EE (Core) option would suffice.
    Install Oracle CM SDK 9.0.3 into your <oracle_home>. After installation is complete, your directory structure will look like this -
    <oracle_home>
    ifs
    cmsdk
    bin
    lib
    j2ee
    OC4J_iFS_cmsdk
    applications
    cmsdk
    cmsdk
    applications-deployments
    config
    B. Configuration
    ================
    Creating the First Domain
    The CM SDK Configuration Assistant will automatically start when iFS is installed. Follow the instructions in the CM SDK Installation Guide to complete your configuration process. You can also choose to run the Configuration Assistant later. This is done by using the script ifsca in the <oracle_home>/cmsdk/bin directory.
    Be sure to choose to create a domain. Call this first domain "DOMAIN1".
    Have all the following selected:
    Run Domain Controller
    Run HTTP Node
    Run Node
    Your first domain is now ready.
    Creating a Second Domain
    Run the CM SDK Configuration Assistant. Again create a domain with the same options, but call this second domain "DOMAIN2".
    Be sure to give different port numbers for protocols you wish to use.
    Disable these protocols on your second domain if they are enabled on the first:
    SMB
    AFP
    E-Mail protocols (IMAP/SMTP)
    The configuration will not work as before. It will prompt you with the following dialog:
    There already exists an OC4J instance for another HTTP Node configured on this machine. Do you wish to replace that instance? Click "Yes" to replace the instance. Click "No" to leave the instance untouched and not create any instance for this new HTTP Node.
    Click "No". This second OC4J instance must be set up manually.
    You now have two iFS domains configured within the same <oracle_home>. You may now use "ifsctl" to start and stop each independently. An HTTP Node exists for DOMAIN1, but not for the DOMAIN2; this must now be manually configured to work.
    C. Setting Up Your Second OC4J Instance
    =======================================
    In order to create your second OC4J instance, you must first prepare a new EAR (Enterprise Application Resource) for use.
    Preparing an EAR file for Second OC4J Instance
    Create a temporary directory for use. Assign it to an environment variable $IFSTMP.
    Copy the <oracle_home>/ifs/cmsdk/lib/cmsdk.ear file into $IFSTMP.
    Go into $IFSTMP. Uncompress the EAR file. Use the following command:
    jar xvf cmsdk.ear
    Edit the application.xml file located in $IFSTMP/META-INF directory. You will see the following contents in the file:
    <application>
    <description>Oracle ifs Administration</description>
    <display-name>Oracle ifs Administration<display-name>
    <module>
    <web>
    <web-uri>cmsdk.war</web-uri>
    <context-root>/cmsdk</context-root>
    </web>
    </module>
    </application>
    Replace the term "cmsdk.war" with "domain2.war" and "cmsdk" with "domain2" (above). "domain2" is now the new name of your second OC4J instance.
    Go into $IFSTMP. Rename the cmsdk.war file to "domain2.war". Now use the following command to jar it all up (NOTE: The JAR process will ignore the $IFSTMP/META-INF/MANIFEST.MF file which is O.K.)
    jar cvf domain2.ear
    You now have a EAR file which you can use for deployment.
    Deploying EAR file
    ==================
    Now open a web browser and connect to the iAS Enterprise Manager Console. You must open your browser on the machine where you put your new EAR file.
    Under the "System Components" section, choose "Create OC4J Instance".
    You will be prompted for a new name for your chosen OC4J Instance. Enter "OC4J_iFS_domain2". After the instance has been created, select "OK" and return to the main EMD page.
    You will now see your newly created OC4J instance listed. Click on it.
    You will now see information about your OC4J instance. Under the "Applications" section, click on "Deploy EAR File".
    You will now be presented with a Deploy Application wizard. Read and click through to "Step 2" of the wizard.
    You will now need to name and deploy your EAR file. In the text box "J2EE Application", indicate the path to your modified EAR file from the "Preparing And Deploying Second Instance for OC4J" section. You will find your domain2.ear in $IFSTMP. You can also click the "Browse..." button to find it.
    For the text box marked "Application Name" enter "domain2".
    For the rest of the Deployment Wizard steps. You can simply click "Next" and accept all the defaults. After "Step 8", click "Deploy".
    You should have the following setup:
    OC4J Instance Name Domain Name Application Name EAR
    OC4J_iFS_cmsdk domain1 cmsdk cmsdk.ear
    OC4J_iFS_domain2 domain2 domain2 domain2.ear
    You now have a second OC4J instance of CM SDK recognized by the iAS Enterprise Manager Console. It does not work yet. You must now manually prepare your new OC4J instance.
    Your directory structure now looks like
    <oracle_home>
    ifs
    cmsdk
    bin
    lib
    j2ee
    OC4J_iFS_cmsdk
    applications
    cmsdk
    cmsdk
    applications-deployments
    config
    OC4J_iFS_domain2
    applications
    domain2
    domain2
    applications-deployments
    config
    Setting Up OC4J Configuration Files for Your Second Instance
    First make a backup copy, then modify the file <oracle_home>/opmn/conf/opmn.xml. Look for a section that looks something like this
    <oc4j maxRetry="3" instanceName="OC4J_ifs_cmsdk" gid="OC4J_iFS_cmsdk" numProcs="1">
    <config-file path="/iashome/j2ee/OC4J_iFS_cmsdk/config/server.xml"/>
    <java-option value="-Xmx256m "/>
    <oc4j-option value="-properties"/>
    <port ajp="3001-3100" jms="3201-3300" rmi="3101-3200"/>
    <environment>
    <prop name="LIBPATH" value="/iashome/lib32:/iashome/lib"/>
    <prop name="DISPLAY" value=":0.0"/>
    <prop name="NLS_LANG" value=".UTF8"/>
    <prop name="LD_LIBRARY_PATH" value="/iashome/lib32:/iashome/lib"/>
    <prop name="SHLIB_PATH" value="/iashome/lib32:/iashome/lib"/>
    </environment>
    Look for the section where instanceName="OC4J_iFS_domain2". It looks like this:
    <oc4j instanceName="OC4J_iFS_domain2" gid="OC4J_iFS_domain2">
    <config-file path="/iashome/j2ee/OC4J_iFS_domain2/config/server.xml"/>
    Now copy the first <environment> section into the section for your second OC4J instance.
    Make a backup copy, then modify the file <oracle_home>/j2ee/OC4J_iFS_domain2/config/application.xml. Comment out the following sections:
    <library path="../../../jlib/uix2.jar" />
    <library path="../../../jlib/share.jar" />
    Copy the file <oracle_home>/j2ee/OC4J_iFS_cmsdk/config/oc4j.properties to the directory <oracle_home>/j2ee/OC4J_iFS_domain2/config/. Make a backup copy, then edit your new copy of the file. It will look something like this:
    java.awt.headless=true
    IFS.DOMAIN.Name=ifs://mydbserver:1521:orcl8:DOMAIN1
    IFS.DOMAIN.NODE.Name=myappserver.oracle.com HTTP Node
    IFS.DOMAIN.NODE.OracleHome=/iashome
    replace the domain name DOMAIN1 with DOMAIN2.
    Make a backup, then edit the file <oracle_home>/j2ee/OC4J_iFS_domain2/applications/domain2/domain2/index.html.
    change all instances of "cmsdk" to "domain2"
    Edit the file <oracle_home>/j2ee/OC4J_iFS_domain2/config/default-web-site.xml. Look for the following section:
    <default-web-app application="default" name="defaultWebApp" root="/j2ee"/>
    <web-app application="default" name="dms" root="/dmsoc4j"/>
    <web-app application="domain2" name="domain2" root="/domain2" load-on-startup="true"/>
    Add the last line to that section.
    Copy the file <oracle_home>/j2ee/OC4J_iFS_cmsdk/application-deployments/cmsdk/cmsdk/orion-web.xml into the directory <oracle_home>/j2ee/OC4J_iFS_domain2/application-deployments/domain2/domain2. Make a backup copy of the file if it already exists in the destination directory.
    Log into the Enterprise Manager Console. Under the "System Components" section, click on your second domain (myserver:1521:myservice:DOMAIN2) to set that up. Under "Configuration" click "Server Configurations".
    Then click on HttpAdminServerConfiguration. Under the Properties, modify the following properties with these values
    IFS.SERVER.APPLICATION.UIX.ApplicationServletMount /domain2/admin
    IFS.SERVER.APPLICATION.UIX.ContentServletMount /domain2/content
    IFS.SERVER.APPLICATION.UIX.StaticResourcesMount /domain2/static
    Save the above properties. Now, you have to change certain properties in the DavServerConfiguration. From the above UI, cliek on the DavServerConfiguration and click Properties. Modify the following property to have the value shown below:
    IFS.SERVER.PROTOCOL.DAV.ContextServletPath /domain2/content
    Save and exit out of EMD.
    Restart EMD, iAS & iFS (both domains). At this point both the domains should be up and running.
    If you are able to access the following URLs and use them, then your multi iFS domain has worked correctly.
    EMD
    http://<server-name>:1810
    Domain 1
    Content Servlet - http://<server-name>:<port-number>/cmsdk/content
    Admin Servlet - http://<server-name>:<port-number>/cmsdk/admin
    Domain 2
    Content Servlet - http://<server-name>:<port-number>/domain2/content
    Admin Servlet - http://<server-name>:<port-number>/domain2/admin
    You should also be able to see the logs of two different machines domains, nodes under directory $ORACLE_HOME/ifs/cmsdk/log.
    D. Notes
    ========
    Oracle CM SDK does not support installation of multiple 9iAS Oracle Homes on the same machine.

  • ABAP API for XML Validate(by schema)

    Hi
      Encountering this problem, find out ABAP XSLT Processor API to transform a xml file, need to validate it against predefined schema, but have not find out proper ABAP API to take this validate task. Could anybody once meet such kind of problem? will be much appreciated gettting your reply!

    I think I will just do the work in Java Webdynpro and use the KM API. It is a pity because I would much rather do it in ABAP Webdynpro, it just seems like nobody has really done it or documented it well...
    Thanks anyway
    Lynton

  • How to use SEARCH-API provided by portal30 default schema

    I want information about the search api provided by the
    default portal30 schema.
    How can i use that for my specific requirement.
    i want to manipulate it's search limits
    is it possible ???
    Can i customize the specification provided in this api

    Hi,
    about the addDataSource using the Java API, for now you have to disable the security
    in order to add the data source using the MapViewer client API.
    You can do that editing the MapViewer config file:
    <mv_security enforce_sec_role="false" />
    Assuming that you have added your data source, and you have rendered some map,
    you can get the attribute information using the "identify" methods of the
    MapViewer client API.
    1) To identify one individual geometry:
    String [][] result = mapviewer.identify(dataSource,table_name,columns,
    geometry_column,srid, x, y);
    where: "columns" contains the table attribute names that
    you want to retrieve
         x,y represents the device coordinate.
    2) To identify geometries inside a rectangle:
    String [][]result = mapviewer.identify(dataSource,table_name,columns,
    geometry_column,srid, xlowleft,ylowleft,
    xupright,yupright,false);
    where the rectangle coordinates are defined by xlowleft,ylowleft,
    xuprigth, and yuprigth values in device unit.
    3) The resulted String array contains on the first row the attribute
    names, and on the remaining rows the attribute values for each geometry.
    int nlin = result.length; // return the number of lines
    int col = result[0].length; // number of columns
    To get the attribute names:
    // attribute names
    Object []tableattrs = new Object[ncol];
    for(int j=0;j<ncol;j++)
    tableattrs[j] = result[0][j];
    To get the attribute values:
    Object [][]tablevalues = new Object[nlin-1][];
    for(int lin=1;lin<nlin;lin++)
    tablevalues[lin-1] = new Object[ncol];
    for(int col=0;col<ncol;col++)
    tablevalues[lin-1][col] = result[lin][col];
    Regards.

  • JAXP API provides no way to enable XML Schema validation mode

    I am evaluating XDK 9.2.0.5.0 for Java and have encountered another
    problem with XML Schema support when using the JAXP API.
    Using the classes in oracle.xml.jaxp.*, it appears to be impossible to
    enable XML Schema validation mode. I can set the schema object, but
    the parser does not use it for validation.
    If I use DOMParser directly, I can call the setValidationMode(int)
    method to turn on schema validation mode. There is no equivalient
    means to enable XML Schema validation when using the JAXP API.
    Test case for JAXP API:
    === begin OracleJAXPSchemaTest.java ======
    package dfranklin;
    import java.io.*;
    import javax.xml.parsers.*;
    import javax.xml.transform.*;
    import javax.xml.transform.dom.*;
    import javax.xml.transform.stream.*;
    import oracle.xml.parser.schema.XMLSchema;
    import oracle.xml.parser.schema.XSDBuilder;
    import org.w3c.dom.*;
    import org.xml.sax.*;
    public class OracleJAXPSchemaTest
    private final static String xsd = ""
    +"<xsd:schema xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" targetNamespace=\"urn:dfranklin:test\">"
    +" <xsd:element name=\"amount\" type=\"xsd:integer\"/>"
    +"</xsd:schema>";
    private final static String xml =
    "<amount xmlns=\"urn:dfranklin:test\">1</amount>";
    public static void main(String[] args)
    throws Exception
    System.setProperty("javax.xml.parsers.DocumentBuilderFactory",
              "oracle.xml.jaxp.JXDocumentBuilderFactory");
    new OracleJAXPSchemaTest().run();
    public void run()
    throws Exception
    DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
    dbf.setValidating(true);
    dbf.setNamespaceAware(true);
    XMLSchema xmlSchema = buildXMLSchema(new StringReader(xsd));
    dbf.setAttribute("oracle.xml.parser.XMLParser.SchemaObject",
              xmlSchema);
    DocumentBuilder docbldr = dbf.newDocumentBuilder();
    Document doc = docbldr.parse(new InputSource(new StringReader(xml)));
    print(doc);
    private XMLSchema buildXMLSchema(Reader xsdin)
    throws Exception
    XSDBuilder xsdBuilder = new XSDBuilder();
    XMLSchema xmlSchema = (XMLSchema)xsdBuilder.build(xsdin, null);
    return xmlSchema;
    private void print(Document doc)
    throws
    javax.xml.transform.TransformerConfigurationException,
    javax.xml.transform.TransformerException
    Transformer xformer = TransformerFactory.newInstance().newTransformer();
    xformer.transform(new DOMSource(doc), new StreamResult(System.out));
    System.out.println();
    === end OracleJAXPSchemaTest.java ======
    Running that program:
    java dfranklin.OracleJAXPSchemaTest
    produces this output
    Exception in thread "main" oracle.xml.parser.v2.XMLParseException: Element 'amount' used but not declared.
    at oracle.xml.parser.v2.XMLError.flushErrors(XMLError.java:148)
    at oracle.xml.parser.v2.NonValidatingParser.parseDocument(NonValidatingParser.java:269)
    at oracle.xml.parser.v2.XMLParser.parse(XMLParser.java:149)
    at oracle.xml.jaxp.JXDocumentBuilder.parse(JXDocumentBuilder.java:96)
    at dfranklin.OracleJAXPSchemaTest.run(OracleJAXPSchemaTest.java:40)
    at dfranklin.OracleJAXPSchemaTest.main(OracleJAXPSchemaTest.java:27)
    This shows that the parser is not using the XML Schema to validate the
    document. I think it's expecting to find a DTD.
    Here is the equivalent program using DOMParser directly, and setting
    validation mode to SCHEMA_VALIDATION.
    === begin OracleParserTest.java ====
    package dfranklin;
    import java.io.*;
    import javax.xml.transform.*;
    import javax.xml.transform.dom.*;
    import javax.xml.transform.stream.*;
    import oracle.xml.parser.schema.XMLSchema;
    import oracle.xml.parser.schema.XSDBuilder;
    import oracle.xml.parser.v2.DOMParser;
    import oracle.xml.parser.v2.XMLParser;
    import org.w3c.dom.*;
    import org.xml.sax.*;
    public class OracleParserTest
    private final static String xsd = ""
    +"<xsd:schema xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" targetNamespace=\"urn:dfranklin:test\">"
    +" <xsd:element name=\"amount\" type=\"xsd:integer\"/>"
    +"</xsd:schema>";
    private final static String xml =
    "<amount xmlns=\"urn:dfranklin:test\">1</amount>";
    public static void main(String[] args)
    throws Exception
    new OracleParserTest().run();
    public void run()
    throws Exception
    DOMParser dp = new DOMParser();
    XMLSchema xmlSchema = buildXMLSchema(new StringReader(xsd));
    dp.setXMLSchema(xmlSchema);
    dp.setValidationMode(XMLParser.SCHEMA_VALIDATION);
    dp.parse(new InputSource(new StringReader(xml)));
    Document doc = dp.getDocument();
    print(doc);
    private XMLSchema buildXMLSchema(Reader xsdin)
    throws Exception
    XSDBuilder xsdBuilder = new XSDBuilder();
    XMLSchema xmlSchema = (XMLSchema)xsdBuilder.build(xsdin, null);
    return xmlSchema;
    private void print(Document doc)
    throws
    javax.xml.transform.TransformerConfigurationException,
    javax.xml.transform.TransformerException
    Transformer xformer = TransformerFactory.newInstance().newTransformer();
    xformer.transform(new DOMSource(doc), new StreamResult(System.out));
    System.out.println();
    === end OracleParserTest.java ====
    Running that program
    java dfranklin.OracleParserTest
    produces this output
    <?xml version = '1.0'?>
    <amount xmlns="urn:dfranklin:test">1</amount>
    In this case, the parser has validated the document.
    I also tried this with version 10.1.0.0.0 beta, and got the same
    error.
    Darin Franklin

    Thanks for posting that. I tried that code and still got my problem. The big difference is that I'm reading a group of XML files each of which uses a large number of schema files. There are over 50 schema files organized so they can be included as needed. Each of the XML files has a noNamespaceSchemaLocation attribute specifying one of the ten top schma files, that includes many others.
    However, I did solve the problem. I added one line --
           saxb.setFeature( "http://apache.org/xml/features/validation/schema",
                    true);
            // next line is new
            saxb.setProperty( JAXPConstants.JAXP_SCHEMA_LANGUAGE,
                    JAXPConstants.W3C_XML_SCHEMA );after the setFeature to turn on schema validation.
    (It needs an import org.apache.xerces.jaxp.JAXPConstants; statement.)
    Note:With the feature set to true and the setProperty commented out, the EntityResolver is called at construction tiem, and for each schema file, but each element is flagged as needing to be declared.
    With the feature commented out, and the setProperty in place, the EntityResolver is not called, and there is no validation performed. (I added invalid content to one of the files and there were no errors listed.)
    With both the setFeature and the setProperty in place, however, I get the calls from the EntityResolver indicating that it is processing the schema files, and for the good files, I get no errror, but for the bad file, I get an error indicating a bad validation.
    Now I can make the EntityResolver quiet and get what I wanted. Maybe there are other ways to do this, but I've got one that works. :-)
    Thanks to all who have helped.
    Dave Patterson

  • MRP_ATP_PUB.Call_ATP api not retrieving requested_date_quantity value when executed in custom schema but when executed in apps its working fine, can anyone help on this..

    The MRP_ATP_PUB.Call_ATP api not retrieving requested_date_quantity value when executed in custom schema but when executed in apps its working fine, can anyone help on this..
    We are passing the required values to the ATP API.
    1) The x_return_status is showing as 'S' i.e. success but x_atp_rec.Requested_Date_Quantity is not returning any value.
    2) If there is a grant issue how to identify it.
    Regards,
        Vinod Annukaran

    Pl do not post duplicates -0 MRP_ATP_PUB.Call_ATP api not retrieving requested_date_quantity value when executed in custom schema but when executed in apps its working fine, can anyone help on this..

  • Getting error when updating the JavaScript API for Office and manifest schema files in your Visual Studio project from version 1.0 to 1.1

    Hi,
    I`m getting error message like "None of the apps in your project can be activated in the target. The manifest file of one or more apps contain API sets or Office applications that are not supported by
    the target Office client. To debug those apps, update manifest files to exclude any unsupported API sets or Office applications, and then start the project again. Alternatively, you can debug your apps by using Office 365 as a target." when when
    updating the JavaScript API for Office and manifest schema files in your Visual Studio project from version 1.0 to 1.1 in manifest file though i have added host elements.
    any help in this regard is highly appreciated
    Thanks,
    Santosh Sutar  

    Hi Satosh Sutar,
    Based on the description, you got the error message when you update the apps from version 1.0 to 1.1.
    From the error message, it seems the menifest include some settings no allowed in the new version. Would you mind sharing more detail about how you update the project?
    And here is an article about updating apps for Office and menifest schema files in the project for your reference:
    How to: Update the JavaScript API for Office and manifest schema files in your Visual Studio project from version 1.0 to 1.1
    Regards & Fei
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • Altering schema of tables/objects inside a crystal report through API

    hi all,
            We run crystal reports through a Java application (using CR4E API) connecting to Oracle database. All the tables/views within the report do not use fully qualified names (i.e. schemaName.objectName) instead they use the object name alone. Earlier we would run all the reports logging in as the schema owner and hence all the objects would be accessible without issue. Per a new requirement we now log in as a non-schema owner ID and the objects are now not accessible to this user id unless a fully qualified object is not provided as the default context schema will now be different.
           We tried altering the schema through the API like so,
            ITable origTable = null;
            ITable newTable = null;
            String DB_USER_NAME = username;
            String DB_PASSWORD = password;
            String TRUSTED_CONNECTION = "true";
            String SERVER_TYPE = "JDBC (JNDI)";
            String USE_JDBC = "true";
            String DATABASE_DLL = "crdb_jdbc.dll";
            String JNDI_DATASOURCE_NAME = jndiName;
            String CONNECTION_URL = connectionURL;
            String DATABASE_CLASS_NAME = driverName;
    Tables tables = clientDoc.getDatabaseController().getDatabase().getTables();
                for(int i = 0;i < tables.size();i++){
                    origTable = tables.getTable(i);
                    if (tableName == null || origTable.getName().equals(tableName)) {
                        newTable = (ITable)origTable.clone(true);
                    newTable.setQualifiedName("TestSchema." + origTable.getAlias());    <--- Set actual schema here but it still takes the alias as "command"
    Are we doing anything wrong here? It appears that the table name is always "command", internally I think CR uses the name command for its table and we are not allowed to change it. The table name, alias and qualifier name are be default set to "command" by CR. If I append schema name to the table name I get schemaName.command as against schemaName.objectName.
    Synyonyms are not an option for us for various reasons. We will not be able to go down that road no matter what. However we are looking at an API related solution here so if anyone could advise in this regard it would be very helpful.

    Lindell - your response was very helpful.  I was able to create a SQL Command on the subreport and change the subreport links on the main report to use the paramters in the SQL Command.  The report is now very fast - even when there are lots of detail records on the main report.  It is properly executing the query and not reading all 2M records into memory for each subreport.
    I'm still totally confused as to why Crystal was misbehaving so poorly and changing how the subreport queried the database when the only change was the fields used for record selection on the main report.  It really looks like a bug to me, but maybe someone can still enlighten me.
    thanks again so much.  We are in Parallel testing for a production rollout - and the users are MUCH happier now!  (which of course makes me much happier!)
    Susan
    PS I was not aware of the SQL Command - had never used it before.  Took me a little while to figure it out and how to do the linking - but it is very powerful.  Thanks again.

  • Error getting schema root with OLAP API

    I am getting the following error:
    java.sql.SQLException: Io exception: Connection reset by peer: JVM_recv in socket input stream read
         void oracle.jdbc.dbaccess.DBError.throwSqlException(java.lang.String, java.lang.String, int)
         void oracle.jdbc.dbaccess.DBError.throwSqlException(int, java.lang.Object)
         void oracle.jdbc.dbaccess.DBError.throwSqlException(java.io.IOException)
         void oracle.jdbc.driver.OracleStatement.executeNonQuery(boolean)
         void oracle.jdbc.driver.OracleStatement.doExecuteOther(boolean)
         void oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout()
         int oracle.jdbc.driver.OraclePreparedStatement.executeUpdate()
         boolean oracle.jdbc.driver.OraclePreparedStatement.execute()
         oracle.express.idl.ExpressMdmModule.MetadataPropertyBagUnion[] oracle.express.idl.ExpressMdmModule.MetadataProviderInterfaceStub.getMetadataPropertyBags(java.lang.String[])
         oracle.express.mdm.MetadataPropertyBag[] oracle.express.mdm.MetadataPropertyBagFetcher.fetchMetadataPropertyBags(java.lang.String[])
         oracle.express.mdm.MdmObject oracle.express.mdm.MdmMetadataProvider.getMetadataObject(java.lang.String)
         oracle.express.mdm.MdmSchema oracle.express.mdm.MdmMetadataProvider.getRootSchema()
         void mypackage3.olaptest.<init>()
         void mypackage3.olaptest.main(java.lang.String[])
    java.lang.NullPointerException
         oracle.express.mdm.MetadataPropertyBag[] oracle.express.mdm.MetadataPropertyBagFetcher.fetchMetadataPropertyBags(java.lang.String[])
         oracle.express.mdm.MdmObject oracle.express.mdm.MdmMetadataProvider.getMetadataObject(java.lang.String)
         oracle.express.mdm.MdmSchema oracle.express.mdm.MdmMetadataProvider.getRootSchema()
         void mypackage3.olaptest.<init>()
         void mypackage3.olaptest.main(java.lang.String[])
    ***Exception encountered : java.lang.NullPointerException
    Process exited with exit code 0.
    ... when running the following code
    try {
    Class.forName("oracle.jdbc.driver.OracleDriver");
    String url = "jdbc:oracle:thin:@jonm2000:1521:jonm";
    String user = "sh";
    String password = "sh";
    oracle.jdbc.OracleConnection conn = (oracle.jdbc.OracleConnection)java.sql.DriverManager.getConnection(url, user, password);
    ExpressTransactionProvider tp = new ExpressTransactionProvider();
    ExpressDataProvider dp = new ExpressDataProvider(conn, tp);
    dp.initialize();
    MdmMetadataProvider mp = null;
    mp = (MdmMetadataProvider) dp.getDefaultMetadataProvider();
    MdmSchema root = mp.getRootSchema();
    dp.close();
    conn.close();
    catch(Exception e) {
    System.out.println("***Exception encountered : " + e.toString());
    e.printStackTrace();
    It is also brings down the Oracle database.
    I am running:
    JDeveloper 9.0.2.822.0
    Oracle Database 9.0.2.1.0
    The code I am running is pretty much copied from the Oracle OLAP API guide - does anyone know why I am getting problems?

    It appears to be missing metadata. Since you are trying to get the schema, this is most likely a field that is required but not present (something silly, like labels). Try the following scripts posted below that verify metadata.
    When creating solved level hierarchies, all of these dimensions require 4 special dimension attributes. All 4 of these dimension attributes require a level attribute to be mapped to a populated column in each of the solved hierarchies.
    The 4 special attributes are:
    GID
    PARENT_GID
    ET
    PARENT_ET.
    You can check if these attributes exist with the following query:
    SELECT DA.OWNER,\n\
    DA.DIMENSION_NAME,\n\
    DA.ATTRIBUTE_NAME,\n\
    NVL(DA.DISPLAY_NAME, DA.ATTRIBUTE_NAME),\n\
    NVL(DA.DESCRIPTION, DA.ATTRIBUTE_NAME),\n\
    (CASE WHEN D.DESCRIPTOR_VALUE = 'Long Description' THEN 4\n\
    WHEN D.DESCRIPTOR_VALUE = 'Short Description' THEN 5\n\
    WHEN D.DESCRIPTOR_VALUE = 'End Date' THEN 1\n\
    WHEN D.DESCRIPTOR_VALUE = 'Time Span' THEN 2\n\
    WHEN D.DESCRIPTOR_VALUE = 'Year Ago Period' THEN 3\n\
    WHEN D.DESCRIPTOR_VALUE = 'Grouping ID' THEN 6\n\
    WHEN D.DESCRIPTOR_VALUE = 'Parent Grouping ID' THEN 7\n\
    WHEN D.DESCRIPTOR_VALUE = 'ET Key' THEN 8\n\
    WHEN D.DESCRIPTOR_VALUE = 'Parent ET Key' THEN 9\n\
    ELSE 0\n\
    END)\n\
    FROM ALL_OLAP2_DIM_ATTRIBUTES DA,\n\
    all_olap2_entity_desc_uses edu,\n\
    all_olap_descriptors d\n\
    where\n\
    DA.OWNER = EDU.ENTITY_OWNER (+)\n\
    AND DA.DIMENSION_NAME = EDU.ENTITY_NAME (+)\n\
    AND DA.ATTRIBUTE_NAME = EDU.CHILD_ENTITY_NAME (+)\n\
    AND EDU.DESCRIPTOR_ID = D.DESCRIPTOR_ID (+)\n\
    ORDER BY DA.OWNER, DA.DIMENSION_NAME, DA.ATTRIBUTE_NAME
    For these 4 attributes, it's not enough that they just exist, (note you can name them whatever you want) but they also have to be marked as the appropriate type as per the above SQL.
    Note also that the above SQL checks for other specially marked attributes such as Long/Short Description and End Date/Time Span. These attributes can exist without being marked as such (and can even be missing completely), and OLAP API will still function. However, I believe the OLAP API functions "better" if these attributes exist and are marked as special.
    The below SQL will check your column mappings for all attributes. (As a general rule, you shouldn't have to worry too much about mapping any CWMLITE logical entity to a valid table/column, because the CWMLITE API should catch if you don't use a valid table/column.)
    select owner,\n\
    dimension_name,\n\
    hierarchy_name,\n\
    level_name,\n\
    attribute_name,\n\
    table_owner,\n\
    table_name,\n\
    column_name,\n\
    (case when dtype = 'NUMBER' then 0\n\
    when dtype = 'DOUBLE' then 5\n\
    when dtype = 'FLOAT' then 4\n\
    when dtype = 'DATE' then 7\n\
    else 1 end)\n\
    from\n\
    all_olap2_dim_level_attr_maps\n\
    ORDER BY OWNER, DIMENSION_NAME, HIERARCHY_NAME, ATTRIBUTE_NAME
    Finally, note that any hierarchy which you map as coming from an AW will be a solved level hierarchy.

  • API to access schema!

    Hi,
    I need to access the schema structure(SOM) in a way similar to DOM. I want to know if there is any API available to do so.
    thanks

    I did look up those. It looks ok, the only thing is how do I get the data types for the elements? eg
    <xs:element name="someEle" type="xs:integer"/>
    I want to extract the information that someEle is of type Integer i.e get the primitive type of the element. getType() gives me if it simple type /complex ?

  • Java API - Editor class for an XML schema

    Hi,
    i am very interesting in Java API. I would like to make an editor class for an XML schema. (I will create XML files in the current project based on this XML schema.) What step's are require for this editor class?
    Regards
    Gabor

    DavidThi808 wrote:
    jtahlborn wrote:
    you can provide a schema when parsing an xml document in order to check for schema conformance, but that isn't going to affect your XPath queries at all. DOM content is never anything but strings.In the case of both dom4j/jaxen and the .NET runtime the values returned from XPath queries when a schema is provided are typed. So you get back numbers, dates, and booleans as well as strings. And for numbers you get correct comparisons so 20 > 1.i guess it's possible. i use schemas when parsing xml, and i've used xpath (infrequently), but i'm not sure that i've ever used them together in a way that i would see functionality like that.
    FYI, you use http://docs.oracle.com/javase/6/docs/api/javax/xml/parsers/DocumentBuilderFactory.html#setSchema%28javax.xml.validation.Schema%29 to specify a schema while parsing with a DocumentBuilder.

Maybe you are looking for