ESB: Cannot call setRollbackOnly()

Hi,
can anybody explain, what i have to do, if there is an error message:
Cannot call setRollbackOnly() current thread is NOT associated with a transaction
and the ESB has the following trace?
oracle.tip.esb.server.common.exceptions.BusinessEventRetriableException: Eine unbehandelte Exception wurde im ESB-System ausgelöst. Es wurde folgende Exception gemeldet: "oracle.tip.esb.server.common.exceptions.BusinessEventRetriableException: Eine unbehandelte Exception wurde im ESB-System ausgelöst. Es wurde folgende Exception gemeldet: "org.collaxa.thirdparty.apache.wsif.WSIFException: exception on JaxRpc invoke: start fault message: java.lang.IllegalStateException: Cannot call setRollbackOnly() current thread is NOT associated with a transaction :end fault message at com.collaxa.cube.ws.wsif.providers.oc4j.jaxrpc.WSIFOperation_JaxRpc.invokeOperation(WSIFOperation_JaxRpc.java:1714) at com.collaxa.cube.ws.wsif.providers.oc4j.jaxrpc.WSIFOperation_JaxRpc.invokeRequestResponseOperation(WSIFOperation_JaxRpc.java:1460) at com.collaxa.cube.ws.wsif.providers.oc4j.jaxrpc.WSIFOperation_JaxRpc.executeRequestResponseOperation(WSIFOperation_JaxRpc.java:1182) at oracle.tip.esb.server.common.wsif.WSIFInvoker.executeOperation(Unknown Source) at oracle.tip.esb.server.common.wsif.WSIFInvoker.nextService(Unknown Source) at oracle.tip.esb.server.common.wsif.WSIFInvoker.nextService(Unknown Source) at oracle.tip.esb.server.service.impl.outadapter.OutboundAdapterService.nextService(Unknown Source) at oracle.tip.esb.server.service.impl.outadapter.OutboundAdapterService.processBusinessEvent(Unknown Source) at oracle.tip.esb.server.dispatch.InitialEventDispatcher.dispatchNonRoutingService(Unknown Source) at oracle.tip.esb.server.dispatch.InitialEventDispatcher.dispatch(Unknown Source) at oracle.tip.esb.server.dispatch.BusinessEvent.raise(Unknown Source) at oracle.tip.esb.utils.EventUtils.raiseBusinessEvent(Unknown Source) at oracle.tip.esb.server.service.EsbRouterSubscription.onBusinessEvent(Unknown Source) at oracle.tip.esb.server.dispatch.EventDispatcher.executeSubscription(Unknown Source) at oracle.tip.esb.server.dispatch.InitialEventDispatcher.processSubscription(Unknown Source) at oracle.tip.esb.server.dispatch.InitialEventDispatcher.processSubscriptions(Unknown Source) at oracle.tip.esb.server.dispatch.EventDispatcher.dispatchRoutingService(Unknown Source) at oracle.tip.esb.server.dispatch.InitialEventDispatcher.dispatch(Unknown Source) at oracle.tip.esb.server.dispatch.BusinessEvent.raise(Unknown Source) at oracle.tip.esb.wsif.WSIFOperation_ESB.executeRequestResponseOperation(Unknown Source) at com.collaxa.cube.ws.WSIFInvocationHandler.invoke(WSIFInvocationHandler.java:431) at com.collaxa.cube.ws.WSInvocationManager.invoke2(WSInvocationManager.java:416) at com.collaxa.cube.ws.WSInvocationManager.invoke(WSInvocationManager.java:222) at com.collaxa.cube.engine.ext.wmp.BPELInvokeWMP.__invoke(BPELInvokeWMP.java:736) at com.collaxa.cube.engine.ext.wmp.BPELInvokeWMP.__executeStatements(BPELInvokeWMP.java:371) at com.collaxa.cube.engine.ext.wmp.BPELActivityWMP.perform(BPELActivityWMP.java:195) at com.collaxa.cube.engine.CubeEngine.performActivity(CubeEngine.java:3271) at com.collaxa.cube.engine.CubeEngine.handleWorkItem(CubeEngine.java:1697) at com.collaxa.cube.engine.dispatch.message.instance.PerformMessageHandler.handleLocal(PerformMessageHandler.java:75) at com.collaxa.cube.engine.dispatch.DispatchHelper.handleLocalMessage(DispatchHelper.java:184) at com.collaxa.cube.engine.dispatch.DispatchHelper.sendMemory(DispatchHelper.java:269) at com.collaxa.cube.engine.CubeEngine.endRequest(CubeEngine.java:5244) at com.collaxa.cube.engine.CubeEngine.createAndInvoke(CubeEngine.java:1083) at com.collaxa.cube.engine.ejb.impl.CubeEngineBean.createAndInvoke(CubeEngineBean.java:132) at com.collaxa.cube.engine.ejb.impl.CubeEngineBean.syncCreateAndInvoke(CubeEngineBean.java:161) 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.r
This happens, when i call over ESB a BPEL which fails and a exception is thrown. But it occurs only every second invoke....

Hi Dave,
after some tests i get the feeling, that this problem is caused in the BPELConsole.
1. I start a BPEL1 with wait for 2 min from BPELConsole. after 2 min i get:
<Faulthttp://schemas.xmlsoap.org/soap/envelope/>
<faultcode>env:Server</faultcode>
<faultstring>java.lang.IllegalStateException: Cannot call setRollbackOnly() current thread is NOT associated with a transaction</faultstring>
</Fault>
But in the audit trail i see the "right" output at the end.
2. I start a BPEL2 which invokes the 2min wait (BPEL1). after 2 min i get:
<Fault http://schemas.xmlsoap.org/soap/envelope/>
<faultcode>env:Server</faultcode>
<faultstring>java.lang.IllegalStateException: Cannot call setRollbackOnly() current thread is NOT associated with a transaction</faultstring>
</Fault>
But in the audit trail for the BPEL2 i can see the "right output at the end and the right response from BPEL1.
Conclusion:
BPEL1 does not get a timeout, because if this is the case, BPEL2 should never see the response of BPEL1.
=> the BPELConsole is the one with the problem.....?!
UPDATE
The conclusion was wrong. I tested the BPEL with a java proxy and got the same error ;-(
Message was edited by:
HEWizard

Similar Messages

  • Facetime cannot call my contacts after upgrading to iOS 8

    My Son
    Is getting frustrated that he cannot call any of his friends on Facetime after upgrading to iOS 8.
    We have reset all his settings, gone through the 11 troubleshooting steps here:
    http://www.macworld.co.uk/how-to/iphone/11-fixes-for-when-facetime-is-not-workin g-3527872/
    Also we have restarted the device several times and updated to 8.0.2.
    Any suggestions on how we can fix this?
    Thanks,

    Can you receive FT calls?
    What exactly happens when you try to call someone with FT? Error message?
    Have you tried when connected to another network?

  • TS3367 I have two IPhones and one IPad all with the same Apple ID. I can call facetime between the two IPhones, but I cannot call the IPAD from either of the IPhones and when I call my IPhone from the IPad it rings my wife's IPhone after briefly calling m

    I have two IPhones and one IPad all with the same Apple ID. I can call facetime between the two IPhones, but I cannot call the IPAD from either of the IPhones and when I call my IPhone from the IPad it rings my wife's IPhone after briefly calling mine.

    Each device needs a separate address. Use an email address (gmail.com) on the iPad.
    Using FaceTime http://support.apple.com/kb/ht4319
    Troubleshooting FaceTime http://support.apple.com/kb/TS3367
    The Complete Guide to FaceTime + iMessage: Setup, Use, and Troubleshooting
    http://tinyurl.com/a7odey8
    Troubleshooting FaceTime and iMessage activation
    http://support.apple.com/kb/TS4268
    Using FaceTime and iMessage behind a firewall
    http://support.apple.com/kb/HT4245
    iOS: About Messages
    http://support.apple.com/kb/HT3529
    Set up iMessage
    http://www.apple.com/ca/ios/messages/
    Troubleshooting Messages
    http://support.apple.com/kb/TS2755
    Setting Up Multiple iOS Devices for iMessage and Facetime
    http://macmost.com/setting-up-multiple-ios-devices-for-messages-and-facetime.htm l
    FaceTime and iMessage not accepting Apple ID password
    http://www.ilounge.com/index.php/articles/comments/facetime-and-imessage-not-acc epting-apple-id-password/
    Unable to use FaceTime and iMessage with my apple ID
    https://discussions.apple.com/thread/4649373?tstart=90
    For non-Apple devices, check out the TextFree app https://itunes.apple.com/us/app/text-free-textfree-sms-real/id399355755?mt=8
    How to Send SMS from iPad
    http://www.iskysoft.com/apple-ipad/send-sms-from-ipad.html
     Cheers, Tom

  • Payment delivered but still cannot call

    payment delivered but still cannot call. Why?

    Here are some things you can do -
    https://support.skype.com/en/faq/FA50/i-just-purch​ased-skype-credit-but-i-cannot-make-any-calls
    Yet, if still needed, you can also contact customer support for further assistance or instructions. Just open the link pasted below to see the instructions on how to get in touch with customer service -
    https://support.skype.com/en/faq/FA1170/how-can-i-​contact-skype-customer-service
    IF YOU FOUND OUR POST USEFUL THEN PLEASE GIVE "KUDOS". IF IT HELPED TO FIX YOUR ISSUE PLEASE MARK IT AS A "SOLUTION" TO HELP OTHERS. THANKS!
    ALTERNATIVE SKYPE DOWNLOAD LINKS | HOW TO RECORD SKYPE VIDEO CALLS | HOW TO HANDLE SUSPICIOS CALLS AND MESSAGES

  • Payment gone through but cannot call

    payment for this month has gone through but I cannot call. Please can someone help? Thanks
    Solved!
    Go to Solution.

    Hi,
    I checked your account and found that the minutes have now been replenished.
    For future reference, although the recurring payment is taken three days in advance to avoid possible delays, your subscription minutes are reset based on the initial purchase date and time.
    For example, if you purchase a Germany 400 minutes subscription on the 15th at 15.00 GMT, then your recurring payment will be taken on the 12th and the minutes reset on the 15th of the following month at 15.00 GMT.
    You can check when your minutes will be reset from your order details:
    1. Go to https://secure.skype.com/account/purchase/history/orders
    2. Find the first order for your subscription (not the recurring payment)
    3. Click the order ID. The transaction date shows when your subscription was purchased.
    You may also want to refer to this link to know more about how subscriptions work: https://support.skype.com/en/faq/FA10414/
    Hope this helps.
    Julian

  • Java.sql.SQLException: Cannot call rollback when using distributed transac

    Hi all,
    I am getting the below exception trace when I tried to rollback the data in WLI.I am getting the db connection Object from DBControl.
    java.sql.SQLException: Cannot call rollback when using distributed transactions
    at weblogic.jdbc.wrapper.JTAConnection.rollback(JTAConnection.java:313)
    at controls.DailyFeedFileJavaImpl.excuteBatch(DailyFeedFileJavaImpl.jcs:
    904)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
    java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
    sorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:324)
    at com.bea.wlw.runtime.core.dispatcher.DispMethod.invoke(DispMethod.java
    :371)
    at com.bea.wlw.runtime.core.container.Invocable.invoke(Invocable.java:42
    3)
    at com.bea.wlw.runtime.core.container.Invocable.invoke(Invocable.java:39
    6)
    at com.bea.wlw.runtime.jcs.container.JcsProxy.invoke(JcsProxy.java:381)
    at $Proxy59.excuteBatch(Unknown Source)
    at QnbDailyFeedProcess.feedFileJavaObjExcuteBatch(QnbDailyFeedProcess.jp
    d:274)
    at QnbDailyFeedProcess_wf$ImplControlSend15.invoke(QnbDailyFeedProcess_w
    f.java:146)
    at com.bea.wli.bpm.runtime.Perform.execute(Perform.java:32)
    at com.bea.wli.bpm.runtime.ProcessState.executeInternalCallback(ProcessS
    tate.java:726)
    at QnbDailyFeedProcess_wf$_ProcessState.executeInternalCallback(QnbDaily
    FeedProcess_wf.java:311)
    at com.bea.wli.bpm.runtime.ProcessState.executeInternalCallback(ProcessS
    tate.java:685)
    at com.bea.wli.bpm.runtime.ProcessState.processNodeOrchestration(Process
    State.java:681)
    at sun.reflect.GeneratedMethodAccessor193.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
    sorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:324)
    at com.bea.wlw.runtime.core.dispatcher.DispMethod.invoke(DispMethod.java
    :371)
    at com.bea.wli.bpm.runtime.JpdInternalDispMethod.invoke(JpdInternalDispM
    ethod.java:87)
    at com.bea.wlw.runtime.core.container.Invocable.invoke(Invocable.java:42
    3)
    at com.bea.wlw.runtime.core.container.Invocable.invoke(Invocable.java:39
    6)
    at com.bea.wlw.runtime.core.container.Invocable.invoke(Invocable.java:24

    shanmuga gomathi nayagam wrote:
    Hi all,
    I am getting the below exception trace when I tried to rollback the data in WLI.I am getting the db connection Object from DBControl.
    java.sql.SQLException: Cannot call rollback when using distributed transactions
    at weblogic.jdbc.wrapper.JTAConnection.rollback(JTAConnection.java:313)Hi, Ideally, you should obtain the Transaction object and roll it back/ set it
    to rollback only.
    Joe
    at controls.DailyFeedFileJavaImpl.excuteBatch(DailyFeedFileJavaImpl.jcs:
    904)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
    java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
    sorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:324)
    at com.bea.wlw.runtime.core.dispatcher.DispMethod.invoke(DispMethod.java
    :371)
    at com.bea.wlw.runtime.core.container.Invocable.invoke(Invocable.java:42
    3)
    at com.bea.wlw.runtime.core.container.Invocable.invoke(Invocable.java:39
    6)
    at com.bea.wlw.runtime.jcs.container.JcsProxy.invoke(JcsProxy.java:381)
    at $Proxy59.excuteBatch(Unknown Source)
    at QnbDailyFeedProcess.feedFileJavaObjExcuteBatch(QnbDailyFeedProcess.jp
    d:274)
    at QnbDailyFeedProcess_wf$ImplControlSend15.invoke(QnbDailyFeedProcess_w
    f.java:146)
    at com.bea.wli.bpm.runtime.Perform.execute(Perform.java:32)
    at com.bea.wli.bpm.runtime.ProcessState.executeInternalCallback(ProcessS
    tate.java:726)
    at QnbDailyFeedProcess_wf$_ProcessState.executeInternalCallback(QnbDaily
    FeedProcess_wf.java:311)
    at com.bea.wli.bpm.runtime.ProcessState.executeInternalCallback(ProcessS
    tate.java:685)
    at com.bea.wli.bpm.runtime.ProcessState.processNodeOrchestration(Process
    State.java:681)
    at sun.reflect.GeneratedMethodAccessor193.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
    sorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:324)
    at com.bea.wlw.runtime.core.dispatcher.DispMethod.invoke(DispMethod.java
    :371)
    at com.bea.wli.bpm.runtime.JpdInternalDispMethod.invoke(JpdInternalDispM
    ethod.java:87)
    at com.bea.wlw.runtime.core.container.Invocable.invoke(Invocable.java:42
    3)
    at com.bea.wlw.runtime.core.container.Invocable.invoke(Invocable.java:39
    6)
    at com.bea.wlw.runtime.core.container.Invocable.invoke(Invocable.java:24

  • Cannot call ANY stored functions from my Java program

    My problem is that I cannot call ANY stored procedure from my Java
    program. Here is the code for one of my stored procedures which runs
    very well in PL/SQL:
    PL/SQL code:
    CREATE OR REPLACE PACKAGE types AS
    TYPE cursorType IS REF CURSOR;
    END;
    CREATE OR REPLACE FUNCTION list_recs (id IN NUMBER)
    RETURN types.cursorType IS tracks_cursor types.cursorType;
    BEGIN
    OPEN tracks_cursor FOR
    SELECT * FROM accounts1
    WHERE id = row_number;
    RETURN tracks_cursor;
    END;
    variable c refcursor
    exec :c := list_recs(11)
    SQL> print c
    COLUMN1 A1 ROW_NUMBER
    rec_11 jacob 11
    rec_12 jacob 11
    rec_13 jacob 11
    rec_14 jacob 11
    rec_15 jacob 11
    Here is my Java code:
    import java.sql.*;
    import java.io.*;
    import oracle.jdbc.driver.*;
    class list_recs
    public static void main(String args[]) throws SQLException,
    IOException
    String query;
    CallableStatement cstmt = null;
    ResultSet cursor;
    // input parameters for the stored function
    String user_name = "jacob";
    // user name and password
    String user = "jnikom";
    String pass = "jnikom";
    DriverManager.registerDriver(new oracle.jdbc.OracleDriver());
    try { Class.forName ("oracle.jdbc.driver.OracleDriver"); }
    catch (ClassNotFoundException e)
    { System.out.println("Could not load driver"); }
    Connection conn =
    DriverManager.getConnection (
    "jdbc:oracle:thin:@10.52.0.25:1521:bosdev",user,pass);
    try
    String sql = "{ ? = call list_recs(?) }";
    cstmt = conn.prepareCall(sql);
    // Use OracleTypes.CURSOR as the OUT parameter type
    cstmt.registerOutParameter(1, OracleTypes.CURSOR);
    String id = "11";
    cstmt.setInt(2, Integer.parseInt(id));
    // Execute the function and get the return object from the call
    cstmt.executeQuery();
    ResultSet rset = (ResultSet) cstmt.getObject(1);
    while (rset.next())
    System.out.print(rset.getString(1) + " ");
    System.out.print(rset.getString(2) + " ");
    System.out.println(rset.getString(3) + " ");
    catch (SQLException e)
    System.out.println("Could not call stored function");
    e.printStackTrace();
    return;
    finally
    cstmt.close();
    conn.close();
    System.out.println("Stored function was called");
    Here is how I run it, using Win2K and Oracle9 on Solaris:
    C:\Jacob\Work\Java\Test\Vaultus\Oracle9i\FunctionReturnsResultset>java
    list_recs
    Could not call stored function
    java.sql.SQLException: ORA-00600: internal error code, arguments:
    [ttcgcshnd-1], [0], [], [], [], [], [], []
    at
    oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:168)
    at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:208)
    at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:543)
    at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1405)
    at oracle.jdbc.ttc7.TTC7Protocol.fetch(TTC7Protocol.java:889)
    at
    oracle.jdbc.driver.OracleStatement.<init>(OracleStatement.java:490)
    at
    oracle.jdbc.driver.OracleStatement.getCursorValue(OracleStatement.java:2661)
    at
    oracle.jdbc.driver.OracleStatement.getObjectValue(OracleStatement.java:4189)
    at
    oracle.jdbc.driver.OracleStatement.getObjectValue(OracleStatement.java:4123)
    at
    oracle.jdbc.driver.OracleCallableStatement.getObject(OracleCallableStatement.java:541)
    at list_recs.main(list_recs.java:42)
    C:\Jacob\Work\Java\Test\Vaultus\Oracle9i\FunctionReturnsResultset>
    Any help is greatly appreciated,
    Jacob Nikom

    Thank you for your suggestion.
    I tried it, but got the same result. I think the difference in the syntax is due to the Oracle versus SQL92 standard
    conformance. Your statament is the Oracle version and mine is the SQL92. I think both statements are acceptable
    by the Oracle.
    Regards,
    Jacob Nikom

  • I can call from Branch through Gatekeeper to CUCM. But cannot call from CUCM through Gatekeeper to any Branche.

    Hello All,
    I can Call from any Branch office to CUCM through Gatekeeper. But I cannot call from CUCM through Gatekeeper to any Branch.
    My CUCM version is 9.1.2
    Regards
    Bahlul

    Do you see anything shw up on the debugs on the branch router?
    Check debug h225 asn1 to see if there is a setup coming from the CUCM. If not, that means the CUCM is not receiving the IP address of the branch gateway from the GK. This could mean a config issue on the GK with respect to the branch gateways, or on the UCM.
    Take debug gatekeeper main 10 from the gatekeeper. These debugs will show what's happening on the GK while processing the incoming ARQ from CUCM.
    Also please upload the config of the GK, branch gateway here.
    Hantale
    Sree

  • BINDING.JCA-12510 JCA Resource Adapter - Cannot call rollback when using di

    Hi,
    i'm facing a simillar issue with dbadapter while trying to insert a record.
    The issue that I'm facing is: (BINDING.JCA-12563)
    Exception occured when binding was invoked. Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'insert' failed due to: DBWriteInteractionSpec Execute Failed Exception. insert failed. Descriptor name: http://InsertEmployee.TestEmp. Caused by java.sql.SQLException: Cannot call rollback when using distributed transactions. ". The invoked JCA adapter raised a resource exception. Please examine the above error message carefully to determine a resolution.
    I faced the same issues that have been posted in this thread before but this is a new one I'm seeing.
    Following are the configurations that I'm using.
    WEBLOGIC ADMIN CONSOLE
    JDBC datasources
    General tab:
    JNDI Name: jdbc/SOADataSource
    Connection Pool tab:
    URL - jdbc:oracle:thin:@localhost:1522/XE
    Driver Class Name - oracle.jdbc.xa.client.OracleXADataSource
    Properties - user=SATRA_SOAINFRA
    oracle.net.CONNECT_TIMEOUT=10000
    Deployments
    Inside DbAdapter - Configuration
    The general tab shows blank values for 'Native lib dir' and 'JNDI name' fields. Is this normal or I need to populate values into these.
    Inside Outbound Connection Pools the javax.resource.cci.ConnectionFactory created an entry 'eis/DB/10gXE_DBCon'
    following is the settings for dataSourceName property
    dataSourceName java.lang.String jdbc/SOADataSource
    I have kept the value for xADataSourceName as blank as giving the same value of 'jdbc/SOADataSource' throws error.
    The JNDI value that I'm using while creating the database adapter from Jdev is eis/DB/10gXE_DBCon where 10gXE_DBCon is the database connection name.
    Can you please tell me what is the issue and where I'm going wrong.
    Thanks in advance,
    Satrajit

    Hi Sunil,
    I followed your advice and did the changes, that error has gone but a new error is popping up.
    BINDING.JCA-12563 Exception occured when binding was invoked. Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'insert' failed due to: DBWriteInteractionSpec Execute Failed Exception. insert failed. Descriptor name: [InsertEmployee.TestEmp]. Caused by java.sql.SQLSyntaxErrorException: ORA-00942: table or view does not exist . ". The invoked JCA adapter raised a resource exception. Please examine the above error message carefully to determine a resolution.
    The name of the table i'm inserting to is test_emp and it exists in the database.
    the .jca file for dbadsapter is like
    <adapter-config name="FileToDB_DBAdp" adapter="Database Adapter" xmlns="http://platform.integration.oracle/blocks/adapter/fw/metadata">
    <connection-factory location="eis/DB/10gXE_DBCon" UIConnectionName="10gXE_DBCon" adapterRef=""/>
    <endpoint-interaction portType="FileToDB_DBAdp_ptt" operation="insert">
    <interaction-spec className="oracle.tip.adapter.db.DBWriteInteractionSpec">
    <property name="DescriptorName" value="FileToDB_DBAdp.TestEmp"/>
    <property name="DmlType" value="insert"/>
    <property name="MappingsMetaDataURL" value="FileToDB_DBAdp-or-mappings.xml"/>
    <property name="DetectOmissions" value="true"/>
    <property name="GetActiveUnitOfWork" value="false"/>
    </interaction-spec>
    </endpoint-interaction>
    </adapter-config>
    and the .xsd file for dbadapter is
    <?xml version = '1.0' encoding = 'UTF-8'?>
    <xs:schema targetNamespace="http://xmlns.oracle.com/pcbpel/adapter/db/top/FileToDB_DBAdp" xmlns="http://xmlns.oracle.com/pcbpel/adapter/db/top/FileToDB_DBAdp" elementFormDefault="qualified" attributeFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:element name="TestEmpCollection" type="TestEmpCollection"/>
    <xs:complexType name="TestEmpCollection">
    <xs:sequence>
    <xs:element name="TestEmp" type="TestEmp" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="TestEmp">
    <xs:sequence>
    <xs:element name="empid" type="xs:decimal" nillable="true"/>
    <xs:element name="name" type="xs:string" minOccurs="0" nillable="true"/>
    <xs:element name="designation" minOccurs="0" nillable="true">
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:maxLength value="50"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name="salary" type="xs:decimal" minOccurs="0" nillable="true"/>
    <xs:element name="deptno" type="xs:decimal" minOccurs="0" nillable="true"/>
    </xs:sequence>
    </xs:complexType>
    </xs:schema>
    If I change element name from 'TestEmp' to 'Test_Emp' in the .xsd file,
    I'm getting the following issue ...
    Exception occured when binding was invoked. Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'insert' failed due to: Could not create/access the TopLink Session. This session is used to connect to the datastore. Caused by java.lang.NullPointerException. ". The invoked JCA adapter raised a resource exception. Please examine the above error message carefully to determine a resolution.
    I'm confused why does it take the table name as TestEmp and not as Test_Emp.
    Regards,
    Satrajit

  • Cannot call member function on object type

    On 8.1.6 I cannot call a member function from SQL in the way described in the manual.
    The following example is almost copied from the manual:
    create or replace TYPE foo AS OBJECT (a1 NUMBER,
    MEMBER FUNCTION getbar RETURN NUMBER);
    create or replace type body foo is
    MEMBER FUNCTION getbar RETURN NUMBER is
    begin
    return 45;
    end;
    end;
    CREATE TABLE footab(col foo);
    SELECT col,foo.getbar(col) FROM footab; -- OK
    select col,col.getbar() from footab; -- ERROR
    The second select is the way it should be, but I get an error "invalid column name".
    Using the first select, I get the result. This is strange because this is more or less the 'static member' notation (filling in the implicit self parameter myself).
    Is this a known bug in 8.1.6, maybe fixed in later versions?

    Konstantin,
    Did you use loadjava to load the compiled class into the Oracle Database?
    Regards,
    Geoff
    Hello!
    I need to write a member function for object type with java.
    for example:
    create type test as object(
    id number,
    name varchar2(20),
    member function hallo return number);
    create type body test as
    member function hallo return number
    as language java
    name 'test.hallo() return int;
    create table test of test;
    My java-file is:
    public class test {
    public int hallo() {
    return 5;
    select t.hallo() from test t;
    It's does not run. Why?
    I get always an error back. Wrong types or numbers of parameters!!
    please help me.
    thanks in advance
    Konstantin

  • IllegalStateException: strict servlet API: cannot call getWriter()

    I am getting an exception in Weblogic when I am trying to display a pdf file in a web page.
    java.lang.IllegalStateException: strict servlet API: cannot call getWriter() after getOutputStream()
    I am using the following code code
    ByteArrayOutputStream baos;
    ServletOutputStream out = response.getOutputStream();
    baos.writeTo(out);
    I have seen this error in so many discussion forum and there is no proper solution for this error.
    I am able to see the pdf page even with this exception. But I want to get rid of this exception also from Weblogic.

    I just did a quick (and dirty!) test with the following to display a jpg image and it worked for me without any trace of an exception:
        @Override
        protected void doGet(HttpServletRequest request, HttpServletResponse response)  throws ServletException, IOException {
            response.setContentType("image/jpg");
            File f = new File("/Users/me/Desktop/IMG_0032.JPG");
            byte[] bits = new byte[(int) f.length()];
            FileInputStream fos = new FileInputStream(f);
            fos.read(bits);
            ByteArrayOutputStream baos = new ByteArrayOutputStream();
            baos.write(bits, 0, bits.length);
            baos.writeTo(response.getOutputStream());
            baos.close();
            fos.close();
        }Note that there is no call anywhere to response.getWriter() in that.
    I'd guess the exception is directing you at what the problem is, at least as the server is seeing it -- somewhere in the execution of the request path there would appear to be call to response.getWriter() occurring after a call to response.getOutputStream() has been called, which is not permitted on WLS according to the error message.
    Do you use filters on this app? If response.getWriter() has been called on the same response object in a post request filter phase, that would be on the same call path with the same response object and would result in the exception.
    -steve-

  • Parsing failed: TypeError: Cannot call method "replace"

    Hi,
    when i troubleshooting my collector, sentinel GUI message prompt
    following:
    Parsing failed: TypeError: Cannot call method "replace" of undefined;
    input:
    my release.js is following:
    Collector.prototype.initialize = function() {
    this.PARSER.getOffsetData = function(input) {
    if (typeof input.RXMap != "undefined") {
    return input.RXMap.REQUEST_TM;
    conn.addParser(this.PARSER.getOffsetData);
    return true;
    Collector.prototype.cleanup = function() {
    return true;
    Connector.prototype.sendQuery = function() {
    return true;
    Record.prototype.preParse = function(e) {
    if (this.CONNECTION_ERROR != null || typeof this.RXMap == "undefined")
    { return false; }
    if (this.CONNECTION_METHOD == "DATABASE") {
    for (var field in this.RXMap) {
    this[field] = this.RXMap[field];
    return true;
    Record.prototype.parse = function(e) {
    var detstring =
    this.RXMap.REQUEST_TM.replace(/(\d+)\/(\d+)\/(\d{4})\s(\S+)/g, '$1/$2/$3
    $4 GMT');
    var dt = new Date(detstring);
    e.ObserverEventTime(dt);
    return true;
    Record.prototype.normalize = function(e) {
    instance.SEND_EVENT =true;
    return true;
    Record.prototype.postParse = function(e) {
    return true;
    Record.prototype.reply = function(e) {
    return true;
    my sqlquery.base is following:
    SELECT TOP 100 * FROM TS_QUERYBILLSIGNED_LOG WHERE REQUEST_TM > %s
    My table sample is following:
    CUSTCODE,BEGIN_TM,END_TM,PAGEINDEX,QUERYTYPE,SYSTE MNAME,SIGNEDTYPE,CLIENTIP,CLIENTMAC,CLIENTNAME,MET HODNAME,REQUEST_TM,ANSWER_TM,ANSWER_TOTAL,ANSWER_C URRENTCOUNT,LOG_ID,WAYBILL_NOS
    8710294837,12/30/2013,1/2/2014
    23:59,0,0,CSS-CLIENT,0,221.213.26.241,6C-F0-49-CD-2C-CD,a0af75ce888346e,waybillSingedTotal,1/3/2014
    14:50,1/3/2014 14:50,28,4,433676211,
    My table Schema is following:
    USE [sfere]
    GO
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    CREATE TABLE [dbo].[ts_querybillsigned_log](
    [CUSTCODE] [varchar](20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [BEGIN_TM] [datetime] NULL,
    [END_TM] [datetime] NULL,
    [PAGEINDEX] [varchar](20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [QUERYTYPE] [varchar](20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [SYSTEMNAME] [varchar](20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [SIGNEDTYPE] [varchar](20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [CLIENTIP] [varchar](200) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [CLIENTMAC] [varchar](200) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [CLIENTNAME] [varchar](500) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [METHODNAME] [varchar](20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [REQUEST_TM] [datetime] NULL,
    [ANSWER_TM] [datetime] NULL,
    [ANSWER_TOTAL] [numeric](20, 0) NULL,
    [ANSWER_CURRENTCOUNT] [numeric](20, 0) NULL,
    [LOG_ID] [numeric](30, 0) NOT NULL,
    [WAYBILL_NOS] [varchar](400) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
    ) ON [PRIMARY]
    GO
    SET ANSI_PADDING OFF
    Thanks
    Best Regards!
    Steve zeng
    steve_zeng
    steve_zeng's Profile: https://forums.netiq.com/member.php?userid=3875
    View this thread: https://forums.netiq.com/showthread.php?t=50290

    steve_zeng;242145 Wrote:
    > Hi,
    >
    > when i troubleshooting my collector, sentinel GUI message prompt
    > following:
    >
    >
    > Parsing failed: TypeError: Cannot call method "replace" of undefined;
    > input:
    >
    > my release.js is following:
    > ----------------------------------------------------------------------
    > Collector.prototype.initialize = function() {
    > this.PARSER.getOffsetData = function(input) {
    > if (typeof input.RXMap != "undefined") {
    > return input.RXMap.REQUEST_TM;
    > }
    > };
    > conn.addParser(this.PARSER.getOffsetData);
    > return true;
    > };
    >
    > Collector.prototype.cleanup = function() {
    > return true;
    > };
    >
    >
    > Connector.prototype.sendQuery = function() {
    > return true;
    > };
    >
    >
    > Record.prototype.preParse = function(e) {
    > if (this.CONNECTION_ERROR != null || typeof this.RXMap == "undefined")
    > { return false; }
    >
    > if (this.CONNECTION_METHOD == "DATABASE") {
    >
    > for (var field in this.RXMap) {
    > this[field] = this.RXMap[field];
    > }
    > }
    >
    > return true;
    > };
    >
    > Record.prototype.parse = function(e) {
    >
    > var detstring =
    > this.RXMap.REQUEST_TM.replace(/(\d+)\/(\d+)\/(\d{4})\s(\S+)/g, '$1/$2/$3
    > $4 GMT');
    > var dt = new Date(detstring);
    > e.ObserverEventTime(dt);
    > return true;
    > };
    >
    >
    > Record.prototype.normalize = function(e) {
    > instance.SEND_EVENT =true;
    > return true;
    > };
    >
    > Record.prototype.postParse = function(e) {
    > return true;
    > };
    >
    >
    > Record.prototype.reply = function(e) {
    > return true;
    >
    > ----------------------------------------------------------------------------
    > my sqlquery.base is following:
    >
    > SELECT TOP 100 * FROM TS_QUERYBILLSIGNED_LOG WHERE REQUEST_TM > %s
    >
    >
    > My table sample is following:
    > ----------------------------------------------------------------------------------
    >
    > CUSTCODE,BEGIN_TM,END_TM,PAGEINDEX,QUERYTYPE,SYSTE MNAME,SIGNEDTYPE,CLIENTIP,CLIENTMAC,CLIENTNAME,MET HODNAME,REQUEST_TM,ANSWER_TM,ANSWER_TOTAL,ANSWER_C URRENTCOUNT,LOG_ID,WAYBILL_NOS
    > 8710294837,12/30/2013,1/2/2014
    > 23:59,0,0,CSS-CLIENT,0,221.213.26.241,6C-F0-49-CD-2C-CD,a0af75ce888346e,waybillSingedTotal,1/3/2014
    > 14:50,1/3/2014 14:50,28,4,433676211,
    >
    > -----------------------------------------------------------------------------------------
    > My table Schema is following:
    >
    > USE [sfere]
    > GO
    >
    > SET ANSI_NULLS ON
    > GO
    > SET QUOTED_IDENTIFIER ON
    > GO
    > SET ANSI_PADDING ON
    > GO
    > CREATE TABLE [dbo].[ts_querybillsigned_log](
    > [CUSTCODE] [varchar](20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    > [BEGIN_TM] [datetime] NULL,
    > [END_TM] [datetime] NULL,
    > [PAGEINDEX] [varchar](20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    > [QUERYTYPE] [varchar](20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    > [SYSTEMNAME] [varchar](20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    > [SIGNEDTYPE] [varchar](20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    > [CLIENTIP] [varchar](200) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    > [CLIENTMAC] [varchar](200) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    > [CLIENTNAME] [varchar](500) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    > [METHODNAME] [varchar](20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    > [REQUEST_TM] [datetime] NULL,
    > [ANSWER_TM] [datetime] NULL,
    > [ANSWER_TOTAL] [numeric](20, 0) NULL,
    > [ANSWER_CURRENTCOUNT] [numeric](20, 0) NULL,
    > [LOG_ID] [numeric](30, 0) NOT NULL,
    > [WAYBILL_NOS] [varchar](400) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
    > ) ON [PRIMARY]
    >
    > GO
    > SET ANSI_PADDING OFF
    >
    > Thanks
    > Best Regards!
    > Steve zeng
    It's throwing an exception because at some point, you are not checking
    your string for nulls before calling replace. My guess is that
    this.RXMap.REQUEST_TM is sometimes empty/null and when you call replace,
    it then excepts. Always ensure that your string value is
    non-null/defined before calling a function against it.
    brandon.langley
    brandon.langley's Profile: https://forums.netiq.com/member.php?userid=350
    View this thread: https://forums.netiq.com/showthread.php?t=50290

  • FRM-10242:  Cannot call linked-in Forms from Form Builder. error

    FRM-10242: Cannot call linked-in Forms from Form Builder.
    Cause: The menu designer specified a call to linked-in Forms from within Form Builder.
    Action: Notify your DBA.
    does anyone know why this happens.
    I have this main-menu.. and when i click on one of the submenus which should call the form....i get this error.

    Same issue here... Been trying to get this working since a week now. I tried all the solutions like memory heap and all but no luck.
    One thing that I would like to know is that, in some threads the resolution was to recompile the INS_FORMS.MK file under /forms/lib32 but with my installation I don't have that "lib32" folder under /forms/ and I can not even find that file anywhere in my entire installation.
    I am using 12.1.1 on Windows Server 2008.
    Any help or guidelines is greatly appreciated.
    Santhosh.

  • Abstract classes and constructors - cannot call abs. methods in CONSTRUCTOR

    Let me explain the scenario:
    I'm building a program in which I need to read a file (among other things) and I intend to use object orientation to it's fullest in doing so. I thought of creating an abstract FILE class which has the commonalities, and two subclasses SERVER_FILE and PC_FILE, which implement the abstract method GET_CONTENTS in different ways (OPEN DATASET / GUI_UPLOAD), same for the CHOOSE method which allows to select the file from it's corresponding source.
    Initially I've used an interface but since another tasks like setting the file path are common for both, switched to an ABSTRACT class.
    Now, the problem is, from the main code I intend to use a FILE reference to handle either type of file. At the instantiation moment I'd like the path attribute to be set; if it was not set by parameter, i'd like to call the CHOOSE method which is abstract for the superclass. Since this is common for either subclass, I need a way to code it once in the superclass. But I get an error because the CHOOSE method is abstract.
    This is the problem code (extracts):
    *       CLASS lcl_file DEFINITION
    CLASS lcl_file DEFINITION ABSTRACT.
      PUBLIC SECTION.
        METHODS:
          constructor
            IMPORTING
              i_path  TYPE string OPTIONAL
            EXCEPTIONS
              no_path_chosen,
          get_contents ABSTRACT
            RETURNING
              value(rt_contents) TYPE string_table
            EXCEPTIONS
              read_error.
      PROTECTED SECTION.
        DATA:
          _v_path        TYPE string.
        METHODS:
          choose ABSTRACT
            EXCEPTIONS
              no_path_chosen,
          set_path
            IMPORTING
              i_path  TYPE string.
    ENDCLASS.                    "lcl_file DEFINITION
    *       CLASS lcl_file IMPLEMENTATION
    CLASS lcl_file IMPLEMENTATION.
      METHOD constructor.
        IF i_path IS SUPPLIED.
          CALL METHOD set_path
            EXPORTING
              i_path = i_path.
        ELSE.
    *---->>>> PROBLEM CALL - CAN'T BE DONE!!
          CALL METHOD choose
            EXCEPTIONS
              no_path_chosen = 1.
          IF sy-subrc = 1.
            RAISE no_path_chosen.
          ENDIF.
        ENDIF.
      ENDMETHOD.                    "constructor
      METHOD set_path.
        _v_path = i_path.
      ENDMETHOD.                    "set_path
    ENDCLASS.                    "lcl_file IMPLEMENTATION
    *       CLASS lcl_server_file DEFINITION
    CLASS lcl_server_file DEFINITION
                          INHERITING FROM lcl_file.
      PUBLIC SECTION.
        METHODS:
          get_contents REDEFINITION.
      PROTECTED SECTION.
        METHODS:
          choose       REDEFINITION.
    ENDCLASS.                    "lcl_server_file  DEFINITIO
    *       CLASS lcl_server_file IMPLEMENTATION
    CLASS lcl_server_file IMPLEMENTATION.
      METHOD choose.
        DATA:
          l_i_path     TYPE dxfields-longpath,
          l_o_path     TYPE dxfields-longpath.
        CALL FUNCTION 'F4_DXFILENAME_TOPRECURSION'
          EXPORTING
            i_location_flag = 'A'  " Application server
            i_path          = l_i_path
            fileoperation   = 'R'  " Lectura
          IMPORTING
            o_path          = l_o_path
          EXCEPTIONS
            rfc_error       = 1
            OTHERS          = 2.
        IF sy-subrc = 0 AND l_o_path <> l_i_path.
          MOVE l_o_path TO _v_path.
        ELSE.
          RAISE no_path_chosen.
        ENDIF.
      ENDMETHOD.                    "choose
      METHOD get_contents.
        DATA: l_line   LIKE LINE OF rt_contents,
              l_osmsg  TYPE string.
        CHECK NOT _v_path IS INITIAL.
        OPEN DATASET _v_path FOR INPUT
                                 IN TEXT MODE
                                 MESSAGE l_osmsg.
        IF sy-subrc <> 0.
          MESSAGE e000(oo) WITH l_osmsg
                           RAISING read_error.
        ELSE.
          DO.
            READ DATASET _v_path INTO l_line.
            IF sy-subrc = 0.
              APPEND l_line TO rt_contents.
            ELSE.
              EXIT.
            ENDIF.
          ENDDO.
          CLOSE DATASET _v_path.
        ENDIF.
      ENDMETHOD.                    "get_contents
    ENDCLASS.                    "lcl_server_file IMPLEMENTATION
    *       CLASS lcl_pc_file DEFINITION
    CLASS lcl_pc_file  DEFINITION
                       INHERITING FROM lcl_file.
      PUBLIC SECTION.
        METHODS:
          get_contents REDEFINITION.
      PROTECTED SECTION.
        METHODS:
          choose       REDEFINITION.
    ENDCLASS.                    "lcl_pc_file  DEFINITIO
    *       CLASS lcl_pc_file IMPLEMENTATION
    CLASS lcl_pc_file IMPLEMENTATION.
      METHOD choose.
        DATA:
          l_i_path     TYPE dxfields-longpath VALUE 'C:\',
          l_o_path     TYPE dxfields-longpath.
        CALL FUNCTION 'F4_DXFILENAME_TOPRECURSION'
          EXPORTING
            i_location_flag = 'P'  " PC
            i_path          = l_i_path
            fileoperation   = 'R'  " Lectura
          IMPORTING
            o_path          = l_o_path
          EXCEPTIONS
            rfc_error       = 1
            OTHERS          = 2.
        IF sy-subrc = 0 AND l_o_path <> l_i_path.
          MOVE l_o_path TO _v_path.
        ELSE.
          RAISE no_path_chosen.
        ENDIF.
      ENDMETHOD.                    "choose
      METHOD get_contents.
        CHECK NOT _v_path IS INITIAL.
        CALL METHOD cl_gui_frontend_services=>gui_upload
          EXPORTING
            filename                = _v_path
          CHANGING
            data_tab                = rt_contents
          EXCEPTIONS
            file_open_error         = 1
            file_read_error         = 2
            no_batch                = 3
            gui_refuse_filetransfer = 4
            invalid_type            = 5
            no_authority            = 6
            unknown_error           = 7
            bad_data_format         = 8
            header_not_allowed      = 9
            separator_not_allowed   = 10
            header_too_long         = 11
            unknown_dp_error        = 12
            access_denied           = 13
            dp_out_of_memory        = 14
            disk_full               = 15
            dp_timeout              = 16
            OTHERS                  = 17.
        IF sy-subrc <> 0.
          RAISE read_error.
        ENDIF.
      ENDMETHOD.                    "get_contents
    ENDCLASS.                    "lcl_pc_file IMPLEMENTATION
    * Data
    DATA: gr_file          TYPE REF TO lcl_file.
    * Main Program
    START-OF-SELECTION.
    *   Get text lines from file
        IF p_srv = abap_true.
          CREATE OBJECT gr_file
            TYPE
              lcl_server_file
            EXCEPTIONS
              no_path_chosen  = 1.
        ELSE.
          CREATE OBJECT gr_file
            TYPE
              lcl_pc_file
            EXCEPTIONS
              no_path_chosen = 1.
        ENDIF.
    On a 4.6c system this code gave me a dump, while on my NW7.0 SP it doesn't even activate with the following error:
    You cannot call abstract methods in the "CONSTRUCTOR" method.
    - Following some suggestions from Java forums i've tried to define the constructor in the base class as PROTECTED or PRIVATE instead, then calling super->constructor from the subclasses, but I get this error in german:
    Sichtbarkeit des Konstruktors darf nicht spezieller als die Sichtbarkeit der Instanzerzeugung (CREATE-Zuzatz) sein.
    which Altavista translates like:
    Visibility of the constructor may not be more special than the
    visibility of the instance production (CREATE Zuzatz).
    - I've also thought of defining the CHOOSE method as a class (not instance) one, then calling it before creating the file object which maybe solves the problem, but I see that approach more "procedural oriented" which i'm trying to avoid.
    - Of course I could define a constructor for each subclass, but both would have exactly the same code.
    I'm really lost on how should I code this. My main focus is on avoiding code dupplication.
    I hope someone with more OO experience can see what I'm trying to do and sheds some light.
    Many thanks for reading all this!

    Dear Alejandro,
        When i saw your code, you are trying to access an astract method CHOOSE(which is actually implemented in sub class) from the constructor of the base class which is not possible.  By this time, we don't know which sub class it is refering to, so it gives an error.   I see two solutions for this..
    1.  To define constructor in sub class and call the choose method from the consturctor of the sub class(which in this case is reputation of the same again for each sub class)
    2.  Remove the calling of choose method from the constructor of the main class and call it separately(after creating the object).   By now we know which sub class we are refering to.   I would have designed the program in the following way.
    *       CLASS lcl_file DEFINITION
    CLASS lcl_file DEFINITION ABSTRACT.
      PUBLIC SECTION.
        METHODS:
          constructor
            IMPORTING
              i_path  TYPE string OPTIONAL
            EXCEPTIONS
              no_path_chosen,
          get_contents ABSTRACT
            RETURNING
              value(rt_contents) TYPE string_table
            EXCEPTIONS
              read_errorm,
          set_path ABSTRACT
            EXCEPTIONS
              no_path_chosen.
      PROTECTED SECTION.
        DATA:
          _v_path        TYPE string.
    *    METHODS:
    *      choose ABSTRACT
    *        EXCEPTIONS
    *          no_path_chosen,
    *      set_path ABSTRACT
    *        IMPORTING
    *          i_path  TYPE string.
    ENDCLASS.                    "lcl_file DEFINITION
    *       CLASS lcl_file IMPLEMENTATION
    CLASS lcl_file IMPLEMENTATION.
      METHOD constructor.
        IF i_path IS SUPPLIED.
          _v_path = i_path.
    *      CALL METHOD set_path
    *        EXPORTING
    *          i_path = i_path.
    *    ELSE.
    **---->>>> PROBLEM CALL - CAN'T BE DONE!!
    *      CALL METHOD choose
    *        EXCEPTIONS
    *          no_path_chosen = 1.
    *      IF sy-subrc = 1.
    *        RAISE no_path_chosen.
    *      ENDIF.
        ENDIF.
      ENDMETHOD.                    "constructor
    * METHOD set_path.
    *    _v_path = i_path.
    * ENDMETHOD.                    "set_path
    ENDCLASS.                    "lcl_file IMPLEMENTATION
    *       CLASS lcl_server_file DEFINITION
    CLASS lcl_server_file DEFINITION
                          INHERITING FROM lcl_file.
      PUBLIC SECTION.
        METHODS:
          get_contents REDEFINITION,
          set_path     REDEFINITION.
    *  PROTECTED SECTION.
    *    METHODS:
    *      choose       REDEFINITION.
    ENDCLASS.                    "lcl_server_file  DEFINITIO
    *       CLASS lcl_server_file IMPLEMENTATION
    CLASS lcl_server_file IMPLEMENTATION.
      METHOD set_path.
        DATA:
          l_i_path     TYPE dxfields-longpath,
          l_o_path     TYPE dxfields-longpath.
        CHECK _v_path IS INITIAL.
        CALL FUNCTION 'F4_DXFILENAME_TOPRECURSION'
          EXPORTING
            i_location_flag = 'A'  " Application server
            i_path          = l_i_path
            fileoperation   = 'R'  " Lectura
          IMPORTING
            o_path          = l_o_path
          EXCEPTIONS
            rfc_error       = 1
            OTHERS          = 2.
        IF sy-subrc = 0 AND l_o_path  = l_i_path.
          MOVE l_o_path TO _v_path.
        ELSE.
          RAISE no_path_chosen.
        ENDIF.
      ENDMETHOD.                    "set_path
      METHOD get_contents.
        DATA: l_line   LIKE LINE OF rt_contents,
              l_osmsg  TYPE string.
        CHECK NOT _v_path IS INITIAL.
    *    OPEN DATASET _v_path FOR INPUT
    *                             IN TEXT MODE
    *                             MESSAGE l_osmsg.
        IF sy-subrc  = 0.
    *      MESSAGE e000(oo) WITH l_osmsg
    *                       RAISING read_error.
        ELSE.
          DO.
            READ DATASET _v_path INTO l_line.
            IF sy-subrc = 0.
              APPEND l_line TO rt_contents.
            ELSE.
              EXIT.
            ENDIF.
          ENDDO.
          CLOSE DATASET _v_path.
        ENDIF.
      ENDMETHOD.                    "get_contents
    ENDCLASS.                    "lcl_server_file IMPLEMENTATION
    *       CLASS lcl_pc_file DEFINITION
    CLASS lcl_pc_file  DEFINITION
                       INHERITING FROM lcl_file.
      PUBLIC SECTION.
        METHODS:
          get_contents REDEFINITION,
          set_path     REDEFINITION.
    *  PROTECTED SECTION.
    *    METHODS:
    *      choose       REDEFINITION.
    ENDCLASS.                    "lcl_pc_file  DEFINITIO
    *       CLASS lcl_pc_file IMPLEMENTATION
    CLASS lcl_pc_file IMPLEMENTATION.
      METHOD set_path.
        DATA:
          l_i_path     TYPE dxfields-longpath VALUE 'C:\',
          l_o_path     TYPE dxfields-longpath.
        CHECK _v_path IS INITIAL.
        CALL FUNCTION 'F4_DXFILENAME_TOPRECURSION'
          EXPORTING
            i_location_flag = 'P'  " PC
            i_path          = l_i_path
            fileoperation   = 'R'  " Lectura
          IMPORTING
            o_path          = l_o_path
          EXCEPTIONS
            rfc_error       = 1
            OTHERS          = 2.
        IF sy-subrc = 0 AND l_o_path  = l_i_path.
          MOVE l_o_path TO _v_path.
        ELSE.
          RAISE no_path_chosen.
        ENDIF.
      ENDMETHOD.                    "set_path
      METHOD get_contents.
        CHECK NOT _v_path IS INITIAL.
        CALL METHOD cl_gui_frontend_services=>gui_upload
          EXPORTING
            filename                = _v_path
          CHANGING
            data_tab                = rt_contents
          EXCEPTIONS
            file_open_error         = 1
            file_read_error         = 2
            no_batch                = 3
            gui_refuse_filetransfer = 4
            invalid_type            = 5
            no_authority            = 6
            unknown_error           = 7
            bad_data_format         = 8
            header_not_allowed      = 9
            separator_not_allowed   = 10
            header_too_long         = 11
            unknown_dp_error        = 12
            access_denied           = 13
            dp_out_of_memory        = 14
            disk_full               = 15
            dp_timeout              = 16
            OTHERS                  = 17.
        IF sy-subrc  = 0.
    *      RAISE read_error.
        ENDIF.
      ENDMETHOD.                    "get_contents
    ENDCLASS.                    "lcl_pc_file IMPLEMENTATION
    * Data
    DATA: gr_file          TYPE REF TO lcl_file.
    * Main Program
    START-OF-SELECTION.
    *   Get text lines from file
      IF abap_true = abap_true.
        CREATE OBJECT gr_file
          TYPE
            lcl_server_file
          EXCEPTIONS
            no_path_chosen  = 1.
      ELSE.
        CREATE OBJECT gr_file
          TYPE
            lcl_pc_file
          EXCEPTIONS
            no_path_chosen = 1.
      ENDIF.
      gr_file->set_path( ).
    Regards
    Kesava
    Edited by: Kesava Chandra Rao on Mar 19, 2008 11:44 AM

  • Strict servlet API: cannot call getOutputStream() after getWriter()

    i have an applet which will communicate with a servet ,  but got following error in the servlet
    java.lang.IllegalStateException: strict servlet API: cannot call getOutputStream() after getWriter()
    at weblogic.servlet.internal.ServletResponseImpl.getOutputStream(ServletResponseImpl.java:280)
    at oracle.osl.lt.web.servlets.AudioServlet._processGetPlayList(AudioServlet.java:235)
    at oracle.osl.lt.web.servlets.AudioServlet.doPost(AudioServlet.java:91)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
    at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
    at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
    at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
    at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
    at oracle.security.wls.filter.SSOSessionSynchronizationFilter.doFilter(SSOSessionSynchronizationFilter.java:276)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
    at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:111)
    at java.security.AccessController.doPrivileged(Native Method)
    at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
    at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
    at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94)
    at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161)
    at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
    at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:136)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
    at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
    at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
    at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
    at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
    SUBSYSTEM = HTTP USERID = <WLS Kernel> SEVERITY = Error THREAD = [ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)' MSGID = BEA-101020 MACHINE = p1dvosl02 TXID = CONTEXTID = TIMESTAMP = 1318836952580
    WatchAlarmType: AutomaticReset
    WatchAlarmResetPeriod: 30000
    >
    *below _processGetPlayList() is called by doPost() of the servlet.*
    seems the exception is thrown due to response.getOutputStream()?
    any idea? thanks!!
    private void _processGetPlayList(HttpServletRequest request,
    HttpServletResponse response)
    throws ServletException, IOException {
    try {
    ObjectOutputStream objectOut =
    new ObjectOutputStream(new BufferedOutputStream(response.getOutputStream()));
    try {
    RichDataDTOExt richData = _getRichData(request);
    if (richData == null) {
    Log.web().debug(s7);
    throw new ServletException(s7);
    objectOut.writeObject(richData.getAudioRecordings().getAll(new ContentRefDTO[0]));
    finally {
    objectOut.close();
    catch (IOException e) {
    Log.web().error(e.getMessage());
    throw new ServletException();
    }

    thanks for you reply. but seems we don't call getWriter() at all in our code.
    actually this error only happen in our customer's env, no this issue in our development env.
    besides using getOutputStream() and getWriter() simultaneously for same response, is this maybe related with some web server configuration?

Maybe you are looking for

  • Windows failed to start. A recent hardware or software change might be the cause.

    I'm using HP dv6 7043 cl. My system was really slow. It was taking almost 7 mins in startup. I tried to reboot but I think I chose the wrong option while doing it. I pressed F9 button. It asked me to choose DVD-R or usb. I chose dvd option as my reco

  • Searching Ipad for photos by file name

    Why can't I find photos in my Ipad search? (I have an Ipad 2.) When I search for something, it will find everything BUT photos. As it is, it takes forever to find whatever specific photo I want to look at, because I have to scroll and scroll and scro

  • Offline approval: handheld device

    Dear SAP gurus, We have a requirement in which the approvers in our company will do offline approval through their handheld device. In here they dont want to logon to the system and doing approval and rejection in the system, rather they want to clic

  • Opening PSD file in ACR

    I saw some where that you can open a PSD in ACR by File>Open As.  I have CS5 and there is no such option as "Open As" in my File. I also think I saw where you can change the default  for opening from PS to ACR.  Is anyone familiar with this and how d

  • Image-map coordination with JSP

    I have a jpeg based image-map that shows the location of different customers in the city, with clickable regions. When a user selects a region it needs to execute a JSP that displays information about that customer that is pulled from an Oracle datab