Oo4o (Oracle 8i) and COM+

Hi,
We have an application which access Oracle 8i database using oo4o objects hosted in Windows 2000 COM+.
Communicated with MS support and they told that MS is recommending 8.1.7.1.3 Oracle or above. Currently we have 8.1.7.0.0. The 0.0 version leaks memory a lot.
Do any one knows about this?
In addition we are using OraXML DOM/SAX parser. Does this leak memory as well?
Randomly I am seeing that the number of in-call objects is rising up, but we do not get that much of simultaneous user activities. Looks like all the objects are trying to access something from the database and waiting indefinitely. By restarting COM+ we can teporarly solve this issue.
Please help. Send me anything that will help us to solve this problem.
Thanks,
Hilmi.
([email protected])

Evgeni, There is no problem. It is just that you will load a single system. Generally, in an n-tier appliation each layer resides on separate machines. But, that is not a hrad-and-fast rule.

Similar Messages

  • Oracle 8i and COM + (MTS) on the same computer

    I don't have additional server to follow Microsoft recomendation to have Oracle and COM + on separate computers. What type of problems I may face if I put Oracle and COM + (MTS) on same server computer?

    Evgeni, There is no problem. It is just that you will load a single system. Generally, in an n-tier appliation each layer resides on separate machines. But, that is not a hrad-and-fast rule.

  • Oracle 8i and Images

    Hi
    I am using Oracle 8i and Oas 4.0.7. I wanted to load gif/jpeg files into Oracle Database and then I wanted to display it in the HTML page ? Is it possible to do like this in Orcale ? If anybody tried this, please advice me
    null

    Hi,
    This may reach you late. but if you havent yet solved your problem...
    Oracle provides a utility called Oracle Intermedia which is downloadable from the Oracle site.
    This utility can be used with Oracle 8i and comes with a clipboard utility. You will be able to store and retrieve images, audio and video from the database using this.
    Ciao,
    null

  • Oracle, Null and empty Strings

    Currently I'm facing problems with a class, which contains a String, which
    is set to "" (empty String).
    When the class is persistent, oracle writes null to the table column
    (which seems to be common oracle behaviour) and when retrieving the class,
    the field is set to null as well, giving me a lot of null-pointer
    exceptions.
    Anyway ... I can cope with that (just a lot of extra work)
    far worse is the problem, wenn searching objects, that have this field set
    to "" oder null.
    Oracle can't find the records because JDO creates Querys "where
    string=null" or "where string=''" , where oracle expects "where string is
    null" to find the records.
    Is there a workaround or solution ?

    Yeah, that would work as well, thx, but since I have to cope with
    null-Strings now everywhere in my program, it doesn't hurt just to forbid
    empty strings on the program side.
    In future times I'll test on Oracle first, then porting to DB/2 - this way
    I suppose work is far less to garant compability.
    Nevertheless ... having to set the bankcode into quotes is a kodo bug in
    my opinion.
    Kodo knows the type of classfields (in this case string) and shouldn't
    send the parameter as a BigDecimal to the database.
    Given that, and having only bankcodes of null (only neccesary when using
    Oracle), the method would look like:
    public Collection getAccounts (String bankCode)
    throws Exception
    return getAccounts (Account.class, "bankcode=="+bankcode);
    which is how a transparent persistent layer, um, should be , um , I mean
    ... just transparent ;-D
    Marc Prud'hommeaux wrote:
    Stefan-
    Couldn't you just do something like:
    public Collection getAccounts (String bankCode)
    throws Exception
    String filter;
    if (bankCode == null || bankCode.length () == 0)
    filter = "(bankCode == null || bankCode == "")";
    else
    filter = "bankCode == "" + bankCode + """;
    return getAccounts (Account.class, filter);
    If I understand the problem correctly, this should work for all the
    databases.
    In article <[email protected]>, Stefan wrote:
    What operations are you performing to cause this SQL to be issued? You
    say you are having trouble removing objects, but this is clearly not a
    DELETE statement. Is this the SQL that is issued when looking up
    objects by identity?I'm not removing objects, I was removing just quotes from parameters ;-)
    A string column... is it also represented as a string field in your class?Yeah ... just to give you an impression of the code:
    First we have a class, representing a bank account:
    public class Account {
    private AccountMgr myAccountMgr;
    private String bankCode;
    private String id;
    Note, that in nearly all cases bankCode will be a number or null.
    I have a second class "AccountMgr", which does all of the persistant stuff
    (seaching, making persistent etc.)
    This class has two methods, one versatile (protected) to retrieve accounts
    by a given filterString and one who just returns accounts by bankCode,
    building the expected filterstring. Here is my current working version:
    public class AccountMgr {
    public Collection getAccounts(String bankCode) throws Exception {
    if (bankCode!=null) {
    if (bankCode.equals("")) {
    throw new Exception("check code, bankCode='' not allowed to get
    same behavior from DB2 and Oracle");
    // if set, quote the bankCode
    bankCode="""+bankCode+""";
    return getAccounts(Account.class,"bankCode=="+bankCode);
    protected Collection getAccounts(Class accountClass, String filterAdd)
    throws Exception {
    PersistenceManager pm = MyHelper.getPersistenceManager();
    String filter="";
    if (filterAdd!=null && !filterAdd.trim().equals("")) {
    filter+=filterAdd + " && ";
    filter += "myAccountMgr==_accMgr";
    Query query = pm.newQuery(accountClass, filter);
    query.declareParameters("AccountMgr _accMgr");
    return (Collection) query.execute(this);
    As you can see, in the first method I have to set the bankCode into
    quotes, when it's not null.
    This is because otherwise a filter like "bankCode=1234" will be translated
    in a way, where 1234 is send as a BigDecimal to the database:
    [...] executing statement <4239745>: (SELECT [...] FROM JDO_ACCOUNT t0
    WHERE t0.BANKCODE = ? : [reused=1;params={(BigDecimal) 1234}]
    Marc Prud'hommeaux [email protected]
    SolarMetric Inc. http://www.solarmetric.com

  • Oracle Forms and Reports Installation - Creating domain failed

    I installed the weblogic 10.3.6 (Oracle WebLogic Server 11gR1 (10.3.6) + Coherence + OEPE - Package Installer) in my Microsoft Windows(32-bit JVM) system first.
    But there was an error occorred when the package of forms and reports (Oracle Forms and Reports 11gR2 (11.1.2.2.0)) was installing.
    Please find the following error message for your reference.
    Do you have any idea? Please kindly advise.
    Thanks a lot!
    2014-04-02 14:11:14,099 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - read template from "C:/Users/GZ/AppData/Local/Temp//tmp1396419069239wls.jar"
    2014-04-02 14:11:16,185 INFO  [main] com.oracle.cie.domain.template.catalog.impl.ComponentsXMLConverter - C:\Oracle\Middleware\wlserver_10.3\common\lib\components.xml does not contain component elements and will be skipped
    2014-04-02 14:11:17,556 INFO  [main] com.oracle.cie.domain.WLSTemplateBuilder - No config-groups.xml found in template
    2014-04-02 14:11:17,556 INFO  [main] com.oracle.cie.domain.WLSTemplateBuilder - No template-database.xml found in template
    2014-04-02 14:11:18,205 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: read template from "C:/Users/GZ/AppData/Local/Temp//tmp1396419069239wls.jar"
    2014-04-02 14:11:18,477 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - set config option ServerStartMode to "prod"
    2014-04-02 14:11:18,477 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: set config option ServerStartMode to "prod"
    2014-04-02 14:11:18,490 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - create Machine "PC-42A26D.GZAD.MSAD.LOCAL" as obj0
    2014-04-02 14:11:18,604 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: create Machine "PC-42A26D.GZAD.MSAD.LOCAL" as obj0
    2014-04-02 14:11:18,612 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - find Server "AdminServer" as obj1
    2014-04-02 14:11:18,652 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: find Server "AdminServer" as obj1
    2014-04-02 14:11:18,698 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - set obj1 attribute Machine to "PC-42A26D.GZAD.MSAD.LOCAL"
    2014-04-02 14:11:18,705 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: set obj1 attribute Machine to "PC-42A26D.GZAD.MSAD.LOCAL"
    2014-04-02 14:11:18,706 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - set obj1 attribute ListenPort to "7002"
    2014-04-02 14:11:18,716 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: set obj1 attribute ListenPort to "7002"
    2014-04-02 14:11:18,716 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - create Server!SSL "AdminServer!AdminServer" as obj2
    2014-04-02 14:11:18,724 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: create Server!SSL "AdminServer!AdminServer" as obj2
    2014-04-02 14:11:18,735 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - set obj2 attribute HostnameVerificationIgnored to "true"
    2014-04-02 14:11:18,739 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: set obj2 attribute HostnameVerificationIgnored to "true"
    2014-04-02 14:11:18,739 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - find User "weblogic" as obj3
    2014-04-02 14:11:18,755 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: find User "weblogic" as obj3
    2014-04-02 14:11:18,755 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - delete obj3
    2014-04-02 14:11:18,763 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: delete obj3
    2014-04-02 14:11:18,764 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - create User "weblogic" as obj4
    2014-04-02 14:11:18,768 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: create User "weblogic" as obj4
    2014-04-02 14:11:18,771 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - set obj1 attribute PeriodLength to "200000"
    2014-04-02 14:11:18,807 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: set obj1 attribute PeriodLength to "200000"
    2014-04-02 14:11:18,807 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - set obj1 attribute IdlePeriodsUntilTimeout to "20"
    2014-04-02 14:11:18,815 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: set obj1 attribute IdlePeriodsUntilTimeout to "20"
    2014-04-02 14:11:18,815 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - set obj1 attribute DGCIdlePeriodsUntilTimeout to "21"
    2014-04-02 14:11:18,821 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: set obj1 attribute DGCIdlePeriodsUntilTimeout to "21"
    2014-04-02 14:11:18,822 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - set obj1 attribute IdleConnectionTimeout to "1000"
    2014-04-02 14:11:18,830 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: set obj1 attribute IdleConnectionTimeout to "1000"
    2014-04-02 14:11:18,833 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - set obj4 attribute Password to "********"
    2014-04-02 14:11:18,837 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: set obj4 attribute Password to "********"
    2014-04-02 14:11:18,837 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - set config option OverwriteDomain to "true"
    2014-04-02 14:11:18,837 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: set config option OverwriteDomain to "true"
    2014-04-02 14:11:18,837 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - set config option JavaHome to "C:/Oracle/Middleware/jdk160_29"
    2014-04-02 14:11:18,837 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: set config option JavaHome to "C:/Oracle/Middleware/jdk160_29"
    2014-04-02 14:11:18,948 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - validateConfig "KeyStorePasswords"
    2014-04-02 14:11:18,953 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: validateConfig "KeyStorePasswords"
    2014-04-02 14:11:18,954 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - write Domain to "C:/Oracle/Middleware/user_projects/domains/base_domain"
    2014-04-02 14:11:19,441 INFO  [main] com.oracle.cie.domain.DomainChecker - ListenPort internal Validation result= [null]
    2014-04-02 14:11:19,441 INFO  [main] com.oracle.cie.domain.DomainChecker - ListenPort external Validation result= [null]
    2014-04-02 14:11:21,609 INFO  [Thread-1] com.oracle.cie.domain.StartMenu - Creating start menu program=C:\Oracle\Middleware\user_projects\domains\base_domain\bin\startWebLogic.cmd link=Start Admin Server for Weblogic Server Domain
    2014-04-02 14:11:21,659 INFO  [Thread-1] com.oracle.cie.domain.StartMenu - Creating start menu program=C:\Oracle\Middleware\user_projects\domains\base_domain\bin\stopWebLogic.cmd link=Stop Admin Server
    2014-04-02 14:11:21,667 INFO  [Thread-1] com.oracle.cie.domain.StartMenu - Creating start menu program=C:\Windows\system32\rundll32.exe link=Admin Server Console
    2014-04-02 14:11:21,759 INFO  [Thread-1] com.oracle.cie.domain.DomainRegistryWrapper - need to initialize domainRegistrydocument object
    2014-04-02 14:11:21,777 INFO  [Thread-1] com.oracle.cie.domain.DomainGenerator - Domain Generation Successful!
    2014-04-02 14:11:21,783 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: write Domain to "C:/Oracle/Middleware/user_projects/domains/base_domain"
    2014-04-02 14:11:21,784 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - close template
    2014-04-02 14:11:21,784 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: close template
    2014-04-02 14:11:21,784 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - read domain from "C:/Oracle/Middleware/user_projects/domains/base_domain"
    2014-04-02 14:11:21,967 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - succeed: read domain from "C:/Oracle/Middleware/user_projects/domains/base_domain"
    2014-04-02 14:11:21,967 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - add template C:/Oracle/Middleware/oracle_common/common/templates/applications/jrf_template_11.1.1.jar to domain
    2014-04-02 14:11:22,011 WARN  [main] com.oracle.cie.domain.template.dependency.TemplateSelectionTarget - Catalog does not have matching template for location C:\Users\GZ\AppData\Local\Temp\tmp1396419069239wls.jar
    2014-04-02 14:11:22,071 INFO  [main] com.oracle.cie.domain.WLSTemplateBuilder - No template-database.xml found in template
    2014-04-02 14:11:22,100 INFO  [main] com.oracle.cie.domain.WLSTemplateBuilder - No template-database.xml found in template
    2014-04-02 14:11:22,101 ERROR [main] com.oracle.cie.domain.ConfigGroupsEngine$ConfigTopology - Multiple definitions of server-group BI-ADF-ADMIN-SVR are not allowed
    2014-04-02 14:11:22,101 INFO  [main] com.oracle.cie.domain.script.ScriptExecutor - fail: add template C:/Oracle/Middleware/oracle_common/common/templates/applications/jrf_template_11.1.1.jar to domain
    2014-04-02 14:11:22,101 ERROR [main] com.oracle.cie.domain.script.ScriptExecutor - fail: add template C:/Oracle/Middleware/oracle_common/common/templates/applications/jrf_template_11.1.1.jar to domain
    com.oracle.cie.domain.ConfigGroupsException: Multiple definitions of server-group BI-ADF-ADMIN-SVR are not allowed
    at com.oracle.cie.domain.ConfigGroupsEngine$ConfigTopology.merge(ConfigGroupsEngine.java:2762)
    at com.oracle.cie.domain.ConfigGroupsEngine.mergeTopology(ConfigGroupsEngine.java:551)
    at com.oracle.cie.domain.ConfigGroupsEngine.merge(ConfigGroupsEngine.java:479)
    at com.oracle.cie.domain.AbstractTemplate.addConfigGroups(AbstractTemplate.java:314)
    at com.oracle.cie.domain.script.ScriptExecutor.addTemplate(ScriptExecutor.java:605)
    at com.oracle.cie.domain.script.jython.WLScriptContext.addTemplate(WLScriptContext.java:416)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.python.core.PyReflectedFunction.__call__(Unknown Source)
    at org.python.core.PyMethod.__call__(Unknown Source)
    at org.python.core.PyObject.__call__(Unknown Source)
    at org.python.core.PyInstance.invoke(Unknown Source)
    at org.python.pycode._pyx3.addTemplate$20(C:\Users\GZ\AppData\Local\Temp\WLSTOfflineIni364664194239939514.py:89)
    at org.python.pycode._pyx3.call_function(C:\Users\GZ\AppData\Local\Temp\WLSTOfflineIni364664194239939514.py)
    at org.python.core.PyTableCode.call(Unknown Source)
    at org.python.core.PyTableCode.call(Unknown Source)
    at org.python.core.PyFunction.__call__(Unknown Source)
    at org.python.pycode._pyx15.f$0(C:\Users\GZ\AppData\Local\Temp\tmp1396419069304.py:42)
    at org.python.pycode._pyx15.call_function(C:\Users\GZ\AppData\Local\Temp\tmp1396419069304.py)
    at org.python.core.PyTableCode.call(Unknown Source)
    at org.python.core.PyCode.call(Unknown Source)
    at org.python.core.Py.runCode(Unknown Source)
    at org.python.util.PythonInterpreter.execfile(Unknown Source)
    at weblogic.management.scripting.WLST.main(WLST.java:139)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at weblogic.WLST.main(WLST.java:29)

    hi user ...
    on windows there are some steps in front of installation and configuration.
    1) cleare the Windows Env (Path .. Programme x86 )
         no Blank in Path and so on
    2) insert into your local host file your server and IP Adress
    3) in Windows 32 setup of WLS is JDK included so you don't have to install the jdk in front of WLS
    4) verify if you are using the right installation medium (jdk 32 bit, wls 32 bit , fmw 32 bit
    in your OraInventory/logs directory is a *.out file for your installation please can you put this file in the forum
    is there a nodemanager up and running (if so please stop)
    Jan-Peter

  • Oracle Portal and Discoverer Integration

    Portal Version: 9.0.2.0.1
    RDBMS Versjion: 9.0.1.3
    OS/Vers. Where Portal is Installed:: Suse 7 SLES
    Error Number(s)::
    Oracle Portal and Discoverer Integration
    We're trying to integrate Discoverer with Portal unsuccessfully.
    We made many things in accordance with oracle's documentation until add discoverer portlets (worksheet and list of workbooks) in a test page.
    In view mode, the worksheet portlet shows the error:
    "The portlet has not been defined. The publisher must define the portlet by clicking on Edit Defaults for the portlet on the edit mode of this page. Please contact the publisher of this page."
    We think we have to edit properties before. Is this? Anyway edit worksheet portlet crashes between step 1 and 2. The error is: "The listener returned the following Message: 500 Internal Server Error".
    We have a public conection created in EM and a discoverer application which can be viewed using plus or viewer.
    Furthermore, it's not possible delete the added portlets neither the page that contain it. The error at delete is:
    Error: An unexpected error occurred: User-Defined Exception (WWC-44082)
    (WWC-00000)
    An unexpected error has occurred in portlet instances: User-Defined Exception (WWC-
    44846)
    An unexpected error occurred: User-Defined Exception (WWC-43000)
    The following error occurred during the call to Web provider:
    oracle.portal.provider.v2.PortletNotFoundException
    at oracle.portal.utils.v2.ContainerException.fillInStackTrace(Unknown Source)
    at java.lang.Throwable.<init>(Throwable.java:78)
    at java.lang.Exception.<init>(Exception.java:29)
    at oracle.portal.utils.v2.ContainerException.<init>(Unknown Source)
    at oracle.portal.provider.v2.PortletException.<init>(Unknown Source)
    at oracle.portal.provider.v2.PortletNotFoundException.<init>(Unknown Source)
    at oracle.disco.portlet.provider.DiscoPortletPersonalizationMgr.destroy
    (DiscoPortletPersonalizationMgr.java:65)
    at oracle.portal.provider.v2.DefaultPortletInstance.deregister(Unknown Source)
    at oracle.webdb.provider.v2.adapter.soapV1.ProviderAdapter.deregisterPortlet
    (Unknown Source)
    at java.lang.reflect.Method.invoke(Native Method)
    at oracle.webdb.provider.v2.utils.soap.SOAPProcessor.doMethodCall(Unknown Source)
    at oracle.webdb.provider.v2.utils.soap.SOAPProcessor.processInternal(Unknown Source)
    at oracle.webdb.provider.v2.utils.soap.SOAPProcessor.process(Unknown Source)
    at oracle.webdb.provider.v2.adapter.SOAPServlet.doSOAPCall(Unknown Source)
    at oracle.webdb.provider.v2.adapter.SOAPServlet.service(Unknown Source)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:336)
    at com.evermind.server.http.ResourceFilterChain.doFilter
    (ResourceFilterChain.java:59)
    at oracle.security.jazn.oc4j.JAZNFilter.doFilter(JAZNFilter.java:283)
    at com.evermind.server.http.ServletRequestDispatcher.invoke
    (ServletRequestDispatcher.java:523)
    at com.evermind.server.http.ServletRequestDispatcher.forwardInternal
    (ServletRequestDispatcher.java:269)
    at com.evermind.server.http.HttpRequestHandler.processRequest
    (HttpRequestHandler.java:735)
    at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:151)
    at com.evermind.util.ThreadPoolThread.run(ThreadPoolThread.java:64)
    (WWC-43147)
    Edit properties for portlet List of Workbook works but in view mode we have the error in the portlet area:
    "Failed to refresh portlet. Please verify that the information used to create the
    portlet instance or customization is still valid. Otherwise, please contact your
    iAS administrator. oracle.discoiv.controller.FatalControllerException:
    DiscoNetworkException - Nested exception: org.omg.CORBA.OBJECT_NOT_EXIST: minor
    code: 0 completed: No null"
    Any ideas?
    Thanks

    Hi there,
    Have you applied any patches to 9ias since it was first installed? We had the same problem and had to apply a couple of patches to get the portlets working.
    1. Apply the 9.0.2.53.16 one-off patch for Oracle 9iAS Discoverer which takes Discoverer up to 9.0.2.53.16. This patch appears to be password protected and you need to get someone at Oracle support to give you a password.
    2. Apply the Discoverer Portlet Provider: 9.0.2.53.00c patch (patch no. 2595444) which gives you a new discportal.xsl file that actually works. It's this second step that solves your problem but you need to do step 1 before this. This is password protected as well.
    3. As you've upgraded Disco on the server to 9.0.2.53, you'll need to upgrade Disco Admin & Desktop within your 9iDS installation using patch no. 2555265. This is because Disco 9.0.2.53 uses an upgraded EUL that Disco Admin & Desktop need to be patched to use.
    This was the course of action Oracle support advised us about nine months ago. Of course they may have released a further patch to Disco that does 1 & 2 in one go, but we regularly carry out steps 1 and 2 on servers we use and we can use the Disco portlets successfully.
    Hope this helps
    Mark Rittman
    [email protected]

  • Oracle Arrays and getVendorConnection API and Class Cast Exception

    I 've gone through various threads relating to the topic of Oracle Arrays and the getVendorConnecton API call to avoid the class Cast Exception.. i ve used all these but am still facing the problem...
    I would appreciate it if some one could resolve the following queries :
    I am using Weblogic 8.1 SP5 with oracle 8i
    1. I read that the need to use the getVendorConnection API to make pl/sql proc calls with oracle arrays from the WL Server wont be required to avoid classCastException...
    I tried to use the connection from the WL connection pool ..but it didnot work....I used the getVendorConnection API ..which also doesnot seem to work..
    I got the Heurisitc Hazard exception...I used the Oracle 9i driver ie ojdbc14.jar ...after this the exception is not coming but still the code doesnt seem to work...
    the snippet of the code is pasted below :
    ~~~~~~~~~~~~~~~~~~~~~~~code is : ~~~~~~~~~~~~~~~~~~~
    /*below :
    logicalCon is the Connection from the WL connection pool
    JDBCcon is the JDBC connection. */
    <div> try </div>
    <div>{ </div>
    <div>
    <b>vendorConn</b> = ((WLConnection)logicalCon).getVendorConnection();
    </div>
    <div>
    //Calling the procedure
    </div>
    <div>
    //java.util.Map childMap1 = JDBCcon.getTypeMap();
    </div>
    <div>
    java.util.Map childMap1 = <b>vendorConn</b>.getTypeMap();
    </div>
    <div>
    childMap1.put("SST_ROUTE_ENTRY", Class.forName("svm.stport.ejb.StaticRouteEntry"));
    </div>
    <div>
    //JDBCcon.setTypeMap(childMap1);
    <b>vendorConn</b>.setTypeMap(childMap1);
    </div>
    <div>
    // Create an oracle.sql.ARRAY object to hold the values
    </div>
    <div>
    /*oracle.sql.ArrayDescriptor arrayDesc1 = oracle.sql.ArrayDescriptor.createDescriptor("SST_ROUTE_ENTRY_ARR", JDBCcon); */
    </div>
    <div>
    oracle.sql.ArrayDescriptor arrayDesc1 =
    oracle.sql.ArrayDescriptor.createDescriptor("SST_ROUTE_ENTRY_ARR", <b>vendorConn</b>); // here if i use the JDBCcon it works perfectly.... <u>^%^%^%</u>
    </div>
    <div>
    code to fill in the sst route entry array....
    .....arrayValues1 */
    </div>
    <div>
    /* oracle.sql.ARRAY array1 = new oracle.sql.ARRAY(arrayDesc1, JDBCcon, arrayValues1); */
    </div>
    <div>
    oracle.sql.ARRAY array1 = new oracle.sql.ARRAY(arrayDesc1, <b>vendorConn</b>, arrayValues1);
    </div>
    <div>
    callStatement = logicalCon.prepareCall( "? = call procName(?, ?, ?)");
    </div>
    <div>
    /* ..code to set the ?s ie array1 */
    </div>
    <div>
    callStatement.execute();
    </div>
    <div>
    }catch(Exceptio e){
    </div>
    <div>
    }</div>
    <div>
    finally </div>
    </div>{</div>
    <div>System.out.println(" I ve come to finally"); </div>
    <div>}</div>
    <div>
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~code snippet ends here ~~~~~~~~~~~~~~``
    </div>
    I have observed that the control immediately comes to the finally block after the call to the createDescriptor line above with <u>^%^%^%</u> in the comment. If i use the JDBCCon in this line...it works perfectly fine.
    Any pointers to where anything is getting wrong.
    I have jst set the vendorCon to null in the end of the file and not closed it. Subsequently i have closed the logicalCon. This has been mentioned in some of the thread in this forum also.
    Thanks,
    -jw

    Jatinder Wadhwa wrote:
    I 've gone through various threads relating to the topic of Oracle Arrays and the getVendorConnecton API call to avoid the class Cast Exception.. i ve used all these but am still facing the problem...
    I would appreciate it if some one could resolve the following queries :
    I am using Weblogic 8.1 SP5 with oracle 8i
    1. I read that the need to use the getVendorConnection API to make pl/sql proc calls with oracle arrays from the WL Server wont be required to avoid classCastException...
    I tried to use the connection from the WL connection pool ..but it didnot work....I used the getVendorConnection API ..which also doesnot seem to work..
    I got the Heurisitc Hazard exception...I used the Oracle 9i driver ie ojdbc14.jar ...after this the exception is not coming but still the code doesnt seem to work...
    the snippet of the code is pasted below :
    ~~~~~~~~~~~~~~~~~~~~~~~code is : ~~~~~~~~~~~~~~~~~~~Hi. Show me the whole exception and stacktrace if you do:
    try
    vendorConn = ((WLConnection)logicalCon).getVendorConnection();
    java.util.Map childMap1 = vendorConn.getTypeMap();
    childMap1.put("SST_ROUTE_ENTRY" Class.forName("svm.stport.ejb.StaticRouteEntry"));
    vendorConn.setTypeMap(childMap1);
    oracle.sql.ArrayDescriptor arrayDesc1 =
    oracle.sql.ArrayDescriptor.createDescriptor("SST_ROUTE_ENTRY_ARR",
    vendorConn);
    oracle.sql.ARRAY array1 = new oracle.sql.ARRAY(arrayDesc1, vendorConn, arrayValues1);
    callStatement = logicalCon.prepareCall( "? = call procName(? ? ?)");
    callStatement.execute();
    }catch(Exception e){
    e.printStackTrace();
    finally
    try{logicalCon.close();}catch(Exception ignore){}
    System.out.println(" I ve come to finally");
    /*below :
    logicalCon is the Connection from the WL connection pool
    JDBCcon is the JDBC connection. */
    <div> try </div>
    <div>{ </div>
    <div>
    <b>vendorConn</b> = ((WLConnection)logicalCon).getVendorConnection();
    </div>
    <div>
    //Calling the procedure
    </div>
    <div>
    //java.util.Map childMap1 = JDBCcon.getTypeMap();
    </div>
    <div>
    java.util.Map childMap1 = <b>vendorConn</b>.getTypeMap();
    </div>
    <div>
    childMap1.put("SST_ROUTE_ENTRY", Class.forName("svm.stport.ejb.StaticRouteEntry"));
    </div>
    <div>
    //JDBCcon.setTypeMap(childMap1);
    <b>vendorConn</b>.setTypeMap(childMap1);
    </div>
    <div>
    // Create an oracle.sql.ARRAY object to hold the values
    </div>
    <div>
    /*oracle.sql.ArrayDescriptor arrayDesc1 = oracle.sql.ArrayDescriptor.createDescriptor("SST_ROUTE_ENTRY_ARR", JDBCcon); */
    </div>
    <div>
    oracle.sql.ArrayDescriptor arrayDesc1 =
    oracle.sql.ArrayDescriptor.createDescriptor("SST_ROUTE_ENTRY_ARR", <b>vendorConn</b>); // here if i use the JDBCcon it works perfectly.... <u>^%^%^%</u>
    </div>
    <div>
    code to fill in the sst route entry array....
    .....arrayValues1 */
    </div>
    <div>
    /* oracle.sql.ARRAY array1 = new oracle.sql.ARRAY(arrayDesc1, JDBCcon, arrayValues1); */
    </div>
    <div>
    oracle.sql.ARRAY array1 = new oracle.sql.ARRAY(arrayDesc1, <b>vendorConn</b>, arrayValues1);
    </div>
    <div>
    callStatement = logicalCon.prepareCall( "? = call procName(?, ?, ?)");
    </div>
    <div>
    /* ..code to set the ?s ie array1 */
    </div>
    <div>
    callStatement.execute();
    </div>
    <div>
    }catch(Exceptio e){
    </div>
    <div>
    }</div>
    <div>
    finally </div>
    </div>{</div>
    <div>System.out.println(" I ve come to finally"); </div>
    <div>}</div>
    <div>
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~code snippet ends here ~~~~~~~~~~~~~~``
    </div>
    I have observed that the control immediately comes to the finally block after the call to the createDescriptor line above with <u>^%^%^%</u> in the comment. If i use the JDBCCon in this line...it works perfectly fine.
    Any pointers to where anything is getting wrong.
    I have jst set the vendorCon to null in the end of the file and not closed it. Subsequently i have closed the logicalCon. This has been mentioned in some of the thread in this forum also.
    Thanks,
    -jw

  • Oracle ifs and BEA weblogic

    Oracle ifs and BEA weblogic
    We have one application server with weblogic and and ifs 1.0.9 , and one db server with Oracle 8.1.7.
    with the following configuration:
    Web server
    appl server with weblogic 6.0 and ifs 1.1.9
    Oracle 8i Enterprise with interMedia text
    We need to use the iFS API call for our application.
    As I know, weblogic 6.0 support JDK1.3 but ifs 1.1.9 supports up to JDK1.2.
    Is this configuration possible?
    Any conflict if two version JDK co-exist inside same machine?
    Any suggestion?
    If I separate the appl. server into two machines, that is,
    one server installed with weblogic, the other one installed with ifs.
    How could I make use the ifs API call from appl. server?
    Is there any configuration guides for this setting?
    Thanks a lot.
    null

    <BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica">quote:</font><HR>Originally posted by Luis:
    The iFS API is 100% pure Java. You can use it from any other Java application, be it JSP, EJB, or a standalone application.
    So it really comes down to the CLASSPATH. The iFS API is split among a set of .jar files, and some of the configuration information is stored in .properties files that are outside of these .jar files. All of this stuff needs to be in the CLASSPATH of whatever JVM is calling the iFS API.
    The iFS API uses the Oracle JDBC driver to communicate with the Oracle database. This is another requirement. You can't use another JDBC driver; you have to use ours.
    So again, it's all about configuration.<HR></BLOCKQUOTE>
    Would you mind to share more detail on configurating weblogic to integrate the iFS API?
    null

  • ORACLE SERVER AND UNIX TP MONITOR-2

    제품 : ORACLE SERVER
    작성날짜 : 1995-01-24
    Subject: Oracle Server and UNIX Transaction Processing Monitors-2
    Page(3/4)
    This file contains commonly asked questions about Oracle7 Server and UNIX
    Transaction Processing Monitors (TPMs). The topics covered in this article are
         o Oracle Parallel Server and TP Monitors
         o Oracle and DCE-based TP Monitors
         o Other commonly asked questions
    The questions answered in part 3 provide additional detail to the information
    provided in part 1.
    Oracle Parallel Server and TP Monitors
    ======================================
    How does Oracle Parallel Server (OPS) work with TP Monitors?
    If you are using Oracle-managed transactions, there are no special
    considerations. But if you are using TPM-managed transactions, and
    thus need to use the XA interface, then Oracle requires release 7.1.3
    or later and a special version of the Distributed Lock Manager, called
    the session-based lock manager. This version of the DLM is not yet
    available for all platforms. To understand this restriction, let's take
    a look at one of the technical details of XA.
    The XA specification requires that the Resource Manager be able to
    move a transaction from one process to another, and even to be
    able to commit in a separate process. In Oracle, transactions are
    attached to sessions, so that means that we also have to be able to
    move sessions. Therefore, the session/transaction can't have any state
    which is tied to a particular process. The first generation distributed
    lock managers were all built to use the process id as the lock owner,
    which doesn't work for locks which need to move with the transaction.
    Oracle and DCE-based TP Monitors
    ================================
    How does Oracle interface to the Encina TP monitor? To CICS/6000? I've
    heard that they require OSF DCE facilities in order to run?
    Oracle interfaces to Encina and CICS/6000 just as it does to any other
    TP Monitor. The TP Monitor issues XA commands to control transactions, and
    Oracle executes the commands. Encina and CICS/6000 do use DCE features for
    their own operation. However, this use is transparent to the Oracle Server.
    What DCE facilities can Oracle products take advantage of when working with
    a DCE-based TP Monitor?
    The two most commonly mentioned DCE features which might be useful
    to Oracle users are multi-threading and security. We look at these in
    the subsequent questions in this section.
    Encina documentation suggests that a Resource Manager such as Oracle can
    be either single-threaded or multi-threaded? Which way is Oracle XA
    implemented?
    The Oracle XA implementation is single-threaded, as is any Oracle client.
    Within a single process, at most one thread can access Oracle at a time.
    Does that mean that only a single Encina application can access an instance
    of Oracle transactionally at any given moment?
    No. Oracle XA is only single-threaded within a single application server
    process. Multiple applications can access Oracle simultaneously using XA
    by using different application processes. Encina allows
    (1) serial reuse of a single server by different clients. There are
    two options for this. The server can use long term reservation
    but be defined to be in shared or concurrent access mode, which
    allows the server to be used by another client as soon as an RPC
    completes. Alternatively, the server can use default reservation
    and exclusive mode, which allows the server to be used by another
    client as soon as the current transaction ends.
    (2) concurrent execution by multiple servers, even if they are accessing
    the same Oracle database. These may be executing the same or different
    procedures.
    These two features should let you get as much concurrency as you need.
    Why isn't the Oracle XA library multi-threaded?
    The XA specification specifically states that its use of the phrase
    "thread of control" means a process. If an RM were to multi-thread its
    XA, it would be in violation of the specification. This restriction
    was put place in because at the time the specification was written,
    there were numerous thread packages: if the TM used one, the application
    another, and perhaps the RM yet a third, there's no way it could work.
    As threads standards settle down, the later versions of XA will probably
    relax this restriction.
    Will Oracle change if the XA specification changes?
    Very likely. The exact time frame will of course depend on the priority of
    all work items at that time.
    Does Oracle use DCE security via the TP Monitors?
    The integrity of the connection between a DCE TP Monitor client and DCE
    TP Monitor server is protected by the DCE security functionality.
    Theoretically, the TP Monitor could make the DCE-protected client security
    information available to Oracle. Unfortunately, there's no standard way
    for a TP Monitor to pass security information information to a Resource
    Manager such as Oracle. Oracle is leading an effort to extend the X/Open
    model to allow use of the security information provided by the Monitor.
    In the meantime, the basic DCE security features such as encryption are
    useful within TP Monitors.
    Effective use of DCE security would normally also mean that the security of
    the TP Monitor client be passed through the TP Monitor, through the Oracle
    client (application server), to the Oracle Server, and possibly on
    to other Oracle Servers through database links. The ability to transfer
    security information to other processes, called delegation, is missing
    in DCE version 1.0. DCE version 1.1, expected to emerge in late 1994,
    has some delegation features. Oracle is examining these features to see
    how they might be used.
    Are there any special considerations for CICS/6000?
    There are two:
    (1) It is inefficient to run without XA. CICS/6000 is designed to
    use XA. It uses XA so that the CICS server can log on to Oracle
    when it starts, after which it makes that Oracle connection available
    to any transaction it executes. If you don't use XA, the CICS server
    does not itself log on to Oracle so each transaction has to log on
    and log off - a very expensive mode of operation. Also, it is very
    un-cics-like in that the application does the log{on,off} and also
    commits - in a mainframe CICS database program CICS would implicitly
    do these operations. Oracle does not recommend this mode because of the
    performance penalty.
    (2) CICS servers are generic and dynamically load application modules.
    In order for these modules to access the Oracle connection made by
    CICS, the applications must be built with a shared object version of
    the Oracle libraries. This is an installation option on platforms which
    support CICS/6000 and other products using its architecture such as
    CICS 9000.
    Other commonly asked questions
    ==============================
    What other Resource Managers can be included in an Oracle XA transaction?
    Several other relational database vendors have an XA implementation
    available or in progress. There is an XA C-ISAM product from
    Gresham Telecomputing. There are also Resource Managers contained
    within some of the TP Monitors which can be coordinated in the same
    transaction. For example, CICS/6000 has VSAM files and other data
    stores, Encina has its RQS queuing system, and Tuxedo has its /Q queuing
    system.
    What is Recoverable Queuing Service (RQS) and how does it interoperate with
    Oracle7 and Encina? What about /Q?
    Recoverable Queuing Service is a feature provided by Encina which allows
    transactional, distributed queuing (enqueue/dequeue). Tuxedo has a similar
    product called /Q. Because these products are themselves coordinated by the
    TM component of the TP Monitor, their queue operations are atomically
    coordinated with with operations on XA Resource Managers such as Oracle7
    Server. That is, they can atomically put something on one of their queues
    and commit an Oracle transaction, then at some later time dequeue an
    entry atomically with doing some other Oracle transaction. The queue
    system guarantees that the message will not be lost or transmitted twice.
    Can I mix TP Monitor applications with standard Oracle7 Server applications?
    Yes, you can have existing Oracle applications connected to the database
    with alongside TPM applications against the same database. The TPM does
    not manage the whole database, just those transactions which are started
    by the TPM. The Oracle Server will properly handle concurrency control
    between the transactions managed by itself and those managed by the TPM.
    Is Oracle planning to change its tools to be more suitable for TP Monitors?
    With Oracle Procedure Builder 1.5, to be available with CDE2,
    Oracle will provide a foreign function interface that allows you to
    dynamically set up PL/SQL calls that access C functions. In other
    words, you can access C routines in Windows DLLs from within your
    PL/SQL procedures. This will allow PL/SQL under Windows easy access to
    TP Monitor APIs.
    Does Oracle7 Server itself use XA-compliant TPMs as the interface to
    foreign RMs?
    No, for this purpose Oracle Server uses the SQL*Connect products or the new
    Transparent and Procedural Gateway products.
    Does Oracle7 Server use XA to coordinate Oracle7-only distributed
    transactions?
    No, it uses an internal mechanism.
    Can database links be used with XA?
    If an Oracle7 database is running under XA, it can access other Oracle7
    databases through database links, with some restrictions. First, the
    access to the other database must use SQL*Net V2 and be running MTS.
    Second, it must currently be to another Oracle7 database. Assuming those
    restrictions, the Oracle 7 database can do distributed update to another
    Oracle 7 database by using a database link, whether it is started by an
    Oracle application or a TP Monitor application. The TPM will see Oracle
    as only a single RM, but Oracle7 will propagate all the transaction
    commands to the other database, including the two-phase commit. If
    the transaction is started by a TP Monitor application and is using XA,
    it can also update non-Oracle resources managed by the TPM. If it
    is started from an Oracle application, it can only include resources
    managed by Oracle.
    Here's a sample configuration:
    | TPM | | TPM |
    | client | | client |
    | |
    | |
    | TPM |
    | |
    | |
    | Oracle | Forms, Forms, | Oracle | | non-XA | | XA |
    | client | Plus, Plus, | client | | TPM | | TPM |
    --------- Pro, Pro, --------- | server | | server |
    | Financials, Financials, | |(note 1)| ----------
    | etc. etc. | ---------- |
    | | | |
    | SQL | SQL | SQL | XA
    | commit | commit | commit | commit
    | | | |
    | Oracle | | Oracle | | Oracle | | Oracle |
    | server | | server | | server | | server |
    | | | |
    | | | |
    | | | |
    | Database 1 | | Database 2 |
    | | | |
    | A | A
    | | dblink to database 1 | |
    | ------------------------------------ |
    | |
    dblink to database 2
    Note 1: Oracle will work having both XA and non-XA servers but some TPMs
    may have restrictions on this.
    Are multiple direct connections possible from a Pro* program?
    Using XA, you can not only specify multiple direct connections to Oracle7
    databases, you can also update them both in the SAME transaction. The
    way to do this is to use a precompiler feature called a named database.
    When you use a named database, you qualify the SQL statement with the
    database name. For example, you write EXEC SQL AT dbname UPDATE emp ....
    We have a complementary feature in the xa open string to let the user
    associate the name with a particular RM instance, called the DB clause.
    You will also want to use the SqlNet clause in the open string so you
    can give the two different SIDs. This clause does not require the use of
    the SQL*Net product, it is just a naming convention. For more information,
    see Oracle7 Server for UNIX Administrator's Reference Guide.
    Some TP Monitors may not support having multiple Resource Mangers in the
    same server; check with the TPM vendor.
    Is there any collateral available for XA or TP Monitors?
    Oracle At Work 52684.0692
    Oracle7 Server for UNIX Administrator's #A10324-1
    Reference Guide
    Guide to Oracle's Products and Services #A10560
    Oracle7 Server and CICS/6000               #A14200
    Where can I get more information on the DTP model?
    X/Open's address is
    X/Open company Ltd (Publications)
    P O Box 109
    Penn
    High Wycombe
    Bucks HP10 8NP
    Tel: +44 (0)494 813844
    Fax: +44 (0)494 814989
    Request
    G307 Distributed Transaction Processing: Reference Model Version 2
    X/Open Guide G307 ISBN 1-859120-19-9 28cm.44p.pbk.220g.11/93
    Page(4/4)
    This file contains commonly asked questions about Oracle Server and UNIX
    Transaction Processing Monitors (TPMs). The topics covered in this article are
         o Performance with Oracle Server and TP monitors
         o Performance using Oracle's XA Library
    The questions answered in part 4 provide additional detail to the information
    provided in part 1.
    Performance with Oracle Server and TP Monitors
    ==============================================
    I have heard that Transaction Processing Monitors (TPMs) will increase
    Oracle Server performance. Is this true?
    Several hardware and TPM vendors have made the claim that TPMs
    will increase RDBMS performance. This claim is based on TPC-A
    benchmarks. The key point to understand about TPC-A is that it
    requires, for every transaction-per-second, ten times that many
    users to be connected. For example, to get 600 TPS, you need 6000
    users. The next question will answer in more detail how the the
    three-tier architecture addresses this requirement, but first let's
    look more generally at what TP Monitors can and can't do to improve
    performance.
    TP Monitors can provide better performance:
    (1) When there are more than several hundred users connected.
         This is because of the TP Monitor's role in the three-tier
         architecture, described in the next question. In this
         architecture, terminal handling is offloaded to one or more
         separate machines, freeing up those cycles to do database work.
         Note that this does NOT mean that Oracle itself runs faster,
         just that we've given it more CPU cycles to use.
    (2) When, because of the high potential concurrency of requests,
         significant resource contention exists. Use of a TP Monitor can
         limit the degree of concurrency and thus reduce contention.
    TP Monitors can not provide better performance:
    (1) For existing applications. The applications must be designed
         to fit the TP Monitor architecture.
    (2) For applications which are highly interactive in their use of
         the database. These applications put many messages
         through the transport system, and the TP Monitor is not as
         efficient as SQL*Net for point-to-point communication.
    (3) For CPU intensive single-query decision support. When executing
         a single large command, Oracle query facilities work efficiently,
         especially with the use of Oracle Parallel Query, available in 7.1.
    How does the three-tier solution help TPC-A, or other situations with
    thousands of on-line users?
    The TPC-A test calls for a large number of users to produce a given
    result. In the high-end results we produced in June, 1992, for example,
    6150 terminals were simulated to produce 618 TPC-A transactions.
    Thus, terminal concentration accounts for a large portion of the total
    processing time used.
    First, let's look at how the Multi Threaded Server would work for
    this benchmark. In this case, there are many client processes,
    but only a few server processes, which handle client requests on a
    first-come first serve basis. When they are done with a request,
    they take another client's request.
    ORACLE7 CLIENT/SERVER ARCHITECTURE WITH MULTI THREADED SERVER
    | Client | | Server |
    | __________ |______________|_____ _____________ _____________ |
    | | Client | | SQL*Net | |_|Dispatcher | | | |
    | | Process| | | ____| Process |___| | |
    | |________| | | | __|___________| | | |
    |____________| | | | | | | | |
    | | | | | | Oracle7 | |
    ______________ | | | __|__|____ | Server | |
    | Client | | | | __|_|_____ | | | |
    | __________ | | | | | Shared | |____| | |
    | | Client | | SQL*Net | | | | Server |_|____| | |
    | | Process|_|______________|__| | | Process|_| | | |
    | |________| | | | |________| |___________| |
    |____________| | | |
    | | |
    ______________ | | |
    | Client | | | |
    | __________ | | | |
    | | Client | | SQL*Net | | |
    | | Process|_|______________|____| |
    | |________| | | |
    |____________| | |
    |_______________________________________|
    Client processes = N Dispatcher processes >= 1
    Shared server processes >= 1
    If there are 500 clients in this environment, there will be one or more
    dispatcher processes, dynamically tunable, and one or more shared
    server processes, dynamically tunable, on the server. The reduction
    in the total number of processes handled by the server system
    results in more processing time available for RDBMS activity. Thus
    higher RDBMS transaction throughput can be obtained on the
    server system.
    But the problem for the TPC-A, and for certain large customer
    configurations, is not the only ability of the Oracle Server to
    process transactions, but also the ability of the operating
    system to handle huge numbers of incoming connections.
    There is one incoming connection for each client. Most UNIX
    operating systems have a limit on how many such connections they can
    handle. Even if a particular operating system allows a large number of
    connections, each takes some amount of overhead to manage.
    In order to service all 6150 terminals, we selected a 3-tier hardware
    environment where the middle tier, using a TPM, acted as a terminal
    concentrator. The high-end TPC-A architecture looked like the following.
    The Application Servers, which contain the Pro*C statements used to
    perform the transaction also run on the terminal concentrator machine
    in order to offload as much work from the database serve as possible.
    They send the compiled SQL over SQL*Net to the Oracle7 Server processes.
    ORACLE7 TPS-A CLIENT/SERVER ARCHITECTURE
    | Client | | Terminal | | Server |
    | ________ | | Concentrator | | |
    | | Client | |TPM | | | |
    | | Process|_|_____|__ _____ | | |
    | |________| |Comm | | | | | | |
    |____________| | | | | | | |
    | |__| | | | |
    ____________ | | TPM | | | |
    | Client | | ___| | _______ | | ________ _______ |
    | ________ | | | | |_| |__|_______|__| Oracle | | | |
    | | Client | |TPM | | | | |Appl. | |SQL*Net| | Server |__| | |
    | | Process|_|_____|_| |_____| |Server | | | | Process| | | |
    | |________| |Comm | |_______| | | |________| | | |
    |____________| | | | | | |
    |_______________________| | | | |
    | | | |
    ____________ _______________________ | |Oracle7| |
    | Client | | Terminal | | |Server | |
    | ________ | | Concentrator | | | | |
    | | Client | |TPM | | | | | |
    | | Process|_|_____|__ _____ | | __________ | | |
    | |________| |Comm | | | | _______ |SQL*Net| | Oracle | | | |
    |____________| | | | |_| |__|_______|__| Server |__| | |
    | |__| | |Appl. | | | | Process| | | |
    ____________ | | TPM | |Server | | | |________| |_______| |
    | Client | | ___| | |_______| | | |
    | ________ | | | | | | | |
    | | Client | |TPM | | | | | | |
    | | Process|_|_____|_| |_____| | | |
    | |________| |Comm | | | |
    |____________| | | | |
    |_______________________| |________________________|
    Clients = 6150 Terminal concentrators = 17
    TP Monitor instances = 17
    Application server processes Oracle Server processes
    = 17*8 = 17*8
    The TPM is the software component of the terminal concentrator. In this role
    it offloads terminal handling from the the machine running Oracle Server.
    Since more than one terminal concentrator can be configured, whereas the
    database in this case had to run on a single machine, concentrator machines
    can be added until the performance of the back-end machine was optimized.
    This three-tier solution resulted in the outstanding transaction throughput
    announced with Oracle7 Server. Even with Oracle Parallel Server, it may pay
    to offload the terminal handling so that the cluster can be exclusively used
    for database operations.
    Can you summarize the performance discussion for me?
    Depending on the number of users required, different architectures may be
    used in a client/server environment to maximize performance:
    1) For a small number of users, the traditional Oracle two-task
    architecture can be used. In this case, there is a one-to-one
    correspondence between client processes and server processes. It's
    simple, straightforward, and efficient.
    2) For a large number of users, Multi Threaded Server might be a better
    approach. Although some tuning may be required, Multi Threaded Server
    can handle a relatively large number of users for each machine size
    compared to the traditional Oracle approach. Using this approach,
    customers will be able to handle many hundreds of users on many
    platforms. Furthermore, current Oracle applications can move to this
    environment without change.
    3) For a very large number of users, where transactions are simple and
    terminal input concentration is the overriding performance issue, a
    3-tier architecture incorporating a TPM may be useful. In this case,
    terminal concentration is handled by the TPM in the middle tier. As
         you might expect, it is a more complex environment requiring more
         system management. For existing Oracle customers, significant Oracle
    application modifications will be required.
    Oracle provides all of these choices.
    Performance using Oracle's XA Library
    =====================================
    Are there any performance implications to using the XA library (in other
    words, to using TPM-managed transactions)?
    (1) The XA library imposes some performance penalty. You should use
    TPM-managed transactions only if you actually need them. Even if you
    are getting the one-phase commit optimization, the code path is
    longer because we need to map back and forth between external
    formats and internal ones. Also, prior to 7.1, XA requires you
    to release all cursors at the end of a transaction, which results
    in extra parsing. Even with shared cursors, there is time spent
    looking up the one you need and re-validating it. This has been
    improved for 7.1.
    (2) If you need to use two-phase commit, this will incur additional cost
    since extra I/Os are required. If you do need 2PC, you need to account
    for that when sizing the application.
    (3) Although some TPMs allow parallel execution of services (such as Tuxedo's
    "tpacall"), this will not normally enhance performance unless different
    resource managers are being used. In fact, Oracle Server must serialize
    accesses to the same transaction by the same Oracle instance, and the
    block/resume code will in fact degrade performance in that case compared
    to running the services sequentially.

    hello,
    the role is the same on all plattforms. the reports server takes requests for running reports, spawns an engine that executes the request. in addition to that, the server also provides scheduling services and security features for the reports environment.
    regards,
    the oracle reports team

  • Migrating Oracle forms and reports from 6i to 10g Application server on Uni

    HI Guys,
    We are migrating from Oracle forms and reports 6i to 10g.
    We will be having application server on Unix box.
    I understand following will be the changes i will have to do in this respect -
    1. Fonts are to be revisited only Java fonts are supported.
    2. Obsolete items, function calls, triggers are to be removed.
    My question is since this application can be cross platform application,
    Can anyone provide me with changes that I will have to do with configuration files like -
    1. Formsweb.cfg,
    2. forms.conf
    3. default.env
    4. registry.dat
    Keeping in mind that the application server will be on unix box.
    Thanks,
    Av.

    Java fonts are only supported for the Forms version.
    You can use your own fonts for Reports however, there is some legwork to do this. I know because I just went through it.
    If you will only being using the PDF output (which for me replaced the Preview mode that existed in 6i), then you have to install the TTF for the missing font, an AFM (use the ttf2pt1 utility to generate the AFM file, but make sure you remove the AFM extension when moving it to Unix). You'll want to use the PDF Subset in the uifont.ali (which exists under the ORACLE_HOME/guicommon/tk/admin directory and add the line underneath the PDF Subset "Font Family Name"="TTF Font Name" The font family name is found when you open the AFM file in textpad or wordpad for the font you generated. This is what you enter. The TTF Font Name is the name the TTF font. You'll have to restart Reports Server after this.
    If printing to the printer directly is an option you must have, I will tell you it does not work in Linux right now. You can print to the printer but if the font doesn't exist on the internal memory of the printer, it won't work. There are 3rd party utilities like ORARRP and PDFPrint that can take care of this but, each has its own limitations. The one thing I found with ORARRP is if you generate a Report with an RRPA file extension and open it on Windows, it works great, the printer dialog comes up asking you what printer you want to print too. However, if you call this in Linux/Unix with the filename, it brings it up in the web browser but doesn't prompt you for your printer to print too automatically. So, for me, it's a show stopper. My only other option is to install the fonts on the printer that are missing.
    As for the files you want to change, you'll obviously have to make changes to the formsweb.cfg, default.env, forms.conf. I have to modify the reports.sh for some PL/SQL attached libraries to make sure it picks them up. I did have to modify Registry.dat.
    There is alot of work but mainly forms wasn't too bad, unless you had fonts that weren't supported. Usually there is another font that you can use to replace the old one but you have to know which fonts exists on the server and try all the keys on the keyboard to find the corresponding keystroke.
    Hope this helps.
    Chris

  • ASP Crystal Report 2008 (12) Oracle 9 and Visual Basic!

    Hi All,
    I'm mainting an old application and I need to simulate the same client environment in my machine.
    I have a VB application (with COM+ server components) that's creates a report object with parameters. But the only thing that this application does it's call an ASP page that contains all the logic to call a .rpt file, connect to Oracle 9i and then show the crystal report inside a MS webbrowser component (activeX) in the VB form.
    I already setup the IIS, and the site there, I put all the .rpt files in the site and if you try to access without calling from VB you can run the asp pages, but the reports still doesn't appears.
    These ASP pages should connect to Oracle and then show the rpt file, but I'm facing the following error:
    The url that's the application creates is for example this: http://localhost/application1/createreport.asp?sSessionId=2&ReportName=TransactionsProcessed.rpt&parameter1&parameter2... etc etc...
    Script Error Number: -21471922153
    File could not be opened because the library "P2sora7.dll" cannot be found.
    User Error Text: An error has ocurred in CreateReport.asp while logging onto the Oracle database server. Please try again.
    I already check the database connection and it is working fine using ODBC, and the application works fine with the database.
    The file p2sora.dll is in C:\WINDOWS\SYSTEM32, I already copied from another machine, and I have installed Crystal Report 2008 (12) in my server machine with Windows 2003 server, that's the application and web server where report should be run. I know that the old application was executed with Crystal 7, but I cannot found this version to buy.
    Edited by: Don Williams on Mar 21, 2010 9:05 AM

    This is the code of the createPage.asp that it's called from VB:
    <%
    On Error Resume Next
    Dim sDLLName
    Dim sDatabaseType
    Dim sServerName
    Dim sUserId
    Dim sPassword
    Dim arrayInteger
    Dim sReportDbName
    Dim oTransStore
    Dim oReportObject
    Dim oCRSections
    Dim oCRSection
    Dim oCRSubReportObject
    Dim oCRReportObjects
    Dim oCRReportObject
    Dim oCRSubReport
    Dim oCRPageEngine
    Dim sSessionId, sReportPath, sReportName, sTablename
    ' Errorhandling Parameters
    Dim lUserErrorNumber, sUserErrorText
    ' -- Get parameters --
    sSessionId = Request.QueryString("SessionId")
    sReportName = Request.QueryString("ReportName")
    sStartDay = Request.QueryString("StartDay")
    sStartMonth = Request.QueryString("StartMonth")
    sStartYear = Request.QueryString("StartYear")
    sEndDay = Request.QueryString("EndDay")
    sEndMonth = Request.QueryString("EndMonth")
    sEndYear = Request.QueryString("EndYear")
    sAccName = Request.QueryString("AccId")
    sUserName = Request.QueryString("UserName")
    ' -- Initialisation --
    Session("ImageFolder") = ".\images"
    sDatabaseType = Request.QueryString("DbType")
    sServerName = Request.QueryString("ServerName")
    sUserId = Request.QueryString("DbUserId")
    sPassword = Request.QueryString("DbPassword")
    sReportPath = Request.QueryString("ReportsFolder")
    ' -- Select DLL for DB Type
    - Hide quoted text -
    sDLLName = "P2sora7.dll"
    Response.Write "DATABASE SELECCIONADA: " & sDatabaseType
    Select Case sDatabaseType
    Case "Oracle":
      sDLLName = "P2sora7.dll"
      sReportDbName = ""
            Case "SQLServer":
                 sDLLName = "P2ssql.dll"
      sReportDbName = Request.QueryString("ReportsDbName")
            Case "Informix":
                 sDLLName = "P2sifmx.dll"
    End Select
    ' -- Set the ErrorNumber to 400 and sErrorText.
    sUserErrorText = "An error has occurred in CreateReport.asp while loading the report details. CreateObject(CrystalRuntime.Application) . Please try again."
    lUserErrorNumber = 400

  • How to know the list of patches applied to iAS Oracle home and 8.0.6 Home

    Hi,
    Please help me for the steps to know the list of patches applied to iAS Oracle home
    and 8.0.6 Home;
    as we can use ad_bugs, ad_applied_patches, OAM Applied Patches for Oracle Applications Patches list
    and we can use opatch lsinventory for Oracle Database patches applied list

    Thanks for sharing the answer. BTW, there are some exceptions like, determining Developer 6i patchset applied, and Oracle 9iAS version:
    How to find the developer version
    Re: how to find the developer version
    Note: 186981.1 - Oracle Application Server with Oracle E-Business Suite Release 11i FAQ
    https://metalink.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&p_id=186981.1

  • What are the major differences between oracle 10g and oracle express 10g

    Hi
    Can anyone tell, What are the major differences between[b] oracle 10g and oracle express 10g.
    Or if you know any URL, then please do let me know.
    Advance Thanks
    JC

    Dear sir,
    here it is.
    http://www.oracle.com/database/product_editions.html

  • Error Running Oracle Apps and Discoverer at the same time

    Hello,
    We are having trouble running Oracle Apps and Discoverer at the same time on certain user's machines. Here are the specifics:
    The user opens Oracle Apps in Internet Explorer. The user then opens Discoverer in another Internet Explorer windows and receives the following error: Runtime Error! Program: C:\Program Files\Internet Explorer\iexplore.exe abnormal program termination
    As a work around, I installed Firefox on those user's machines. These users run Oracle Apps in Internet Explorer and run Discoverer in FireFox. This has solved the problem in 99% of the cases. However, there is one user who is having FireFox using Discoverer freeze when running Oracle Apps in Internet Explorer.
    Can anyone provide any insight on how I can solve these conflict issues so users can run Oracle Apps and Discoverer at the same time?
    Thanks in advance for your help,
    Carlos

    Hi Michael,
    I agree with you completely. It is reccommended to run 10g on a separate physical server unless you have sufficient resources to run on the same server (which even most large clients do not) Even then, I would recommend a separate server.
    I should have put my comment in context :-)
    a.) I was only stating that it was possible
    and
    b.) whether 10g is installed on the same physical server or separate should not affect the client browser crashing issue that was posted.
    I do have an install with EBS11i and Discoverer 10g on the same physical server and it works fine (this is sandbox/ TEST). Most of my large customers have 10g installed on multiple physical servers due to load balancing (capacity).
    I do work for Oracle. I try to help out on the forum when I can, but it is hit or miss :-(
    I would be glad to discuss anything privately.
    As for the issue at hand, I can reproduce the problem and here is what is occuring.
    I have EBS 11i configured with Jiniator 1.3.24
    I have Discoverer 10g configured with Sun Java plugin 1.4.2_06
    1. If you launch EBS 11i apps and a form with MS IE, then the browser launches the form using Jiniator JRE 1.3.xx (whatever you have configured in AutoConfig for EBS11i)
    2. Next, the user navigates to EBS 11i SSWA and launches a Discoverer workbook.
    What occurs is a child IEXPLORE.exe process is spawned from the parent IEXPLORE.exe process and Discoveer Plus is launched. The parent iexplore.exe process will be attached to the Jiniator JVM. Now if Discoverer is configured with
    a.) Sun Java Plugin or
    b.)a version of Jinitiator that is a different version from what EBS 11i is configured with
    then you may get this conflict.
    It really is an MS IE/JRE conflict with Jinitiator and Sun Java Plugi and the way the broswers attaches to the JVM (IMHO) as this behaviour could be reproduced with other non-oracle java applets.
    You can workaround the situation by:
    a. configure EBS11i and Discoverer to use the same version of Jiniator 1.3.xx
    b. educate the users to open one MS IE browser to connect to EBS11i and then open a second MS IE browser to login to EBS11i SSWA or Discoverer 10g Plus directly to launch workbooks. They need to to this by clicking on the icon and not using File >> New browser. Clicking on the icon will spawn a new parent iexplore.exe process that can attach to a second/different JVM. File >> New Window will spawan a child of the parent.
    c. As you did use two browser versions. MS IE for EBS11 connection and FireFox for Disocverer 10g connection.
    I would choose optoin b, so that you can use Sun Java Plugin with Discoverer.
    Open to any comments. I hope that helps you workaround the problem. The ideal solution is to have EBS 11i use/cerified with the 1.4 or 1.5 JRE. In poking around, I see there is a related post to this on one of Oracle's EBS 11i Product Managers Blog.
    See:
    http://blogs.oracle.com/schan/2006/04/18#a23

  • Steps to UTF-8 Encoding with Oracle 8i and Weblogic 6.1SP1

    What are the Steps to UTF-8 Encoding with Oracle 8i and Weblogic
              6.1SP1?
              I have:
              - Oracle 8.1.5 database created with character set=UTF8 and national
              character set=UTF8
              - Weblogic 6.1SP1 without any encoding mechanism set
              (though I did play with
              <jsp-param><param-name>encoding</param-name>
              <param-value>UTF-8</param-value>
              </jsp-param>
              in the weblogic.xml for a while though it seemed not to make a
              difference)
              - JSP pages set to content='text/html; charset=UTF-8'
              - JSP form POSTs set to enctype="UTF-8"
              I can copy and paste Chinese Kanji from a UTF8 encoded web page into
              form text boxes but when I post the data it comes back as different
              Kanji. Then once it is posted the Kanji stays the same on repeated
              posts. The same Kanji text also looks different when viewed in a form
              text box than when viewed as straight text on the page.
              Is there anything else? Or am I already encoding characters twice?
              Please help!
              Mel Christie
              

    Hi Experts,
    Please correct me if am asking you the question in wrong way.
    I have ARCGIS with oracle database 10gr2 in production server.
    My work is to connect AUTOCAD S/W (client computer which is connected in LAN) to ARCGIS in order to access the toposheets available in SDE user.
    When iam trying to connect iam getting this error:The specified credentials are not valid or provider is not able to establish a connection.
    I checked the path to production server by pinging and user/passcode too but not helpful.
    Please help me in this , very urgent.
    Thanks.
    Edited by: user13355644 on Jul 3, 2010 3:53 AM
    Edited by: user13355644 on Jul 22, 2011 2:55 AM

Maybe you are looking for

  • How to apply XML signature

    Hello. I must apply a electronic signature to a predefined XML. File looks like this: <xml.... <invoice serialCode="NT" serialNumber="123" issueDate="2014-10-01" startDate="2014-09-01" endDate="2014-09-30" orgUnitCode="CAS-NT" providerCode="15107618"

  • Mail keeps disappearing in Snow Leopard

    All of my mail, mailboxes and folders keep disappearing in Mail 4.1. Ever since I updated to Snow Leopard this keeps happening. I constantly have to remove and reenter my MobileMe Imap Info and I am afraid one day I will not be able to reconfigure an

  • Install SQL Developer 1.2 or 1.5

    I downloaded and installed Version 1.5 and later 1.2. when I try to connect to a server in my company, I get the error "lo exception network adapter could not establish the connection" Vendor Code 17006. No one here know what to do with this error. A

  • Enterprise Services and webMethods

    I have an environment utilising webMethods as the integration tool for SAP-nonSAP integrations. My question relates to the future roadmap for enterprise services (ESB and enterprise services repository and registry). Do I utilise SAP PI 7.1 as the en

  • Google Mail Storage

    I have two google accounts setup on my phone. When I delete an email from my phone it deletes it from my inbox through Gmail.  Do the emails get stored on the phone? I keep deleting all my emails off my phone because I thought they were taking space,