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? -
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-purchased-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:24shanmuga 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 NikomThank 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 -
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
BahlulDo 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,
SatrajitHi 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=50290steve_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
-
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