Polling DB Adapter error in Jdev 11.1.1.5
Hi,
I have a table on a schema in an XE database which I am trying to poll. One of the columns in the database is of a VARRAY Collection Type.
I go through the Database Adapter Wizard steps as per usual, importing the table etc etc. However, when I get to choosing the 'After Read' operation, whenever I choose the first one, 'Delete the Row(s) that were read' which is always selected by default, I am unable to press 'Next' and get on to the next screen/step in the wizard. Clicking on the operation radio button again then gives the following error message:
java.lang.ClassCastException: org.eclipse.persistence.mappings.structures.ObjectArrayMapping cannot be cast to org.eclipse.persistence.mappings.CollectionMapping
at oracle.tip.tools.ide.adapters.designtime.adapter.xr.XRAdapterPollingOptionsPage.refreshOrderByFieldChoices(XRAdapterPollingOptionsPage.java:690)
at oracle.tip.tools.ide.adapters.designtime.adapter.xr.XRAdapterPollingOptionsPage.initialize(XRAdapterPollingOptionsPage.java:191)
at oracle.tip.tools.ide.adapters.designtime.adapter.xr.XRAdapterPollingOptionsPage.<init>(XRAdapterPollingOptionsPage.java:122)
at oracle.tip.tools.ide.adapters.designtime.adapter.xr.XRAdapterAfterReadPage.addFollowingPages(XRAdapterAfterReadPage.java:386)
at oracle.tip.tools.ide.adapters.designtime.adapter.xr.XRAdapterAfterReadPage.actionPerformed(XRAdapterAfterReadPage.java:418)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.JToggleButton$ToggleButtonModel.setPressed(JToggleButton.java:291)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at oracle.bali.ewt.olaf2.OracleButtonListener.mouseReleased(OracleButtonListener.java:44)
at java.awt.Component.processMouseEvent(Component.java:6289)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
at java.awt.Component.processEvent(Component.java:6054)
at java.awt.Container.processEvent(Container.java:2041)
at java.awt.Component.dispatchEventImpl(Component.java:4652)
at java.awt.Container.dispatchEventImpl(Container.java:2099)
at java.awt.Component.dispatchEvent(Component.java:4482)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
at java.awt.Container.dispatchEventImpl(Container.java:2085)
at java.awt.Window.dispatchEventImpl(Window.java:2478)
at java.awt.Component.dispatchEvent(Component.java:4482)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:644)
at java.awt.EventQueue.access$000(EventQueue.java:85)
at java.awt.EventQueue$1.run(EventQueue.java:603)
at java.awt.EventQueue$1.run(EventQueue.java:601)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
at java.awt.EventQueue$2.run(EventQueue.java:617)
at java.awt.EventQueue$2.run(EventQueue.java:615)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:614)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:178)
at java.awt.Dialog$1.run(Dialog.java:1046)
at java.awt.Dialog$3.run(Dialog.java:1098)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.Dialog.show(Dialog.java:1096)
at java.awt.Component.show(Component.java:1585)
at java.awt.Component.setVisible(Component.java:1537)
at java.awt.Window.setVisible(Window.java:842)
at java.awt.Dialog.setVisible(Dialog.java:986)
at oracle.bali.ewt.wizard.WizardDialog.runDialog(WizardDialog.java:382)
at oracle.bali.ewt.wizard.WizardDialog.runDialog(WizardDialog.java:298)
at oracle.tip.tools.ide.adapters.designtime.adapter.techAdapterWizard.display(techAdapterWizard.java:364)
at oracle.tip.tools.ide.adapters.designtime.adapter.DbScaEndpointImpl.createImplementation(DbScaEndpointImpl.java:86)
at oracle.tip.tools.ide.fabric.gui.controller.ActionExternalReferenceEdit.add(ActionExternalReferenceEdit.java:145)
at oracle.tip.tools.ide.fabric.gui.controller.ActionExternalReferenceEdit.process(ActionExternalReferenceEdit.java:108)
at oracle.tip.tools.ide.fabric.gui.controller.DiagramController.processActionRequest(DiagramController.java:354)
at oracle.tip.tools.ide.fabric.gui.components.ManagerView$1.run(ManagerView.java:526)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:642)
at java.awt.EventQueue.access$000(EventQueue.java:85)
at java.awt.EventQueue$1.run(EventQueue.java:603)
at java.awt.EventQueue$1.run(EventQueue.java:601)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:612)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
I then choose the 'Logical Delete' option as an alternative. This allows me to get past the current screen and on to the next one. However, I am then unable to get past the 'Logical Delete' option screen.
I am not sure why it is doing this. I have successfully created DB Adapters before that call stored procedures with VARRAY Collection Types defined and I have also created polling adapters for tables with normal datatypes (string, integer, boolean) successfully before. This is the first time I am polling a table with a VARRAY Collection Type column and am wondering whether anyone has experienced this before or whether they could give this a try to see what the error is and how to resolve it please?
I have installed Jdeveloper 11.1.1.5 locally along with XE database. Have tried in 11.1.1.3 Jdeveloper and it works OK, but it doesn't work in 11.1.1.4 either.
Thanks
I encountered the same problem and found the following workaround:
1. Create a copy of the table without the collection type column.
2. Go through the Database Adapter Wizard and finish it normally.
3. Next, modify the created Dataabse Adapter but now select the original table with the collection type column.
4. You should now be able to finish the wizard without any problems.
Similar Messages
-
How to specify custom SQL in polling db adapter with logical delete option
Hi all,
I am writing a SOA composite app using JDeveloper SOA Suite 11.1.1.4 connecting to a SQL Server db using a polling DB Adapter with the logical delete option to send data to a BPEL process.
I have requirements which go beyond what is supported in the JDeveloper UI for DB Adapter polling options, namely:
* update more than one column to mark each row read, and
* specify different SQL for the logical delete operation based on whether bpel processing of the data polled was successful or not.
A complicating factor is that the polling involves two tables. Here is my full use-case:
1) Polling will select data derived from two tables: e.g. 'headers' and 'details' simplified for this example:
table: headers
hid - primary key
name - data label
status - 'unprocessed', 'processed', or 'error'
processedDate - null when data is loaded, set to current datetime when row is processed
table: details
hid - foreign key pointed at header.hid
attr - data attribute name
value - value of data attribute
2) There is a many:1 relationship between detail and header rows through the hid columns. The db adapter polling SELECT shall return results from an outer join consisting of one header row and the associated detail rows where header.status = 'unprocessed' and header.hid = details.hid. (This is supported by the Jdeveloper UI)
3) The polled data will be sent to be processed by a bpel process:
3.1) If the bpel processing succeeds, the logical delete (UPDATE) operation shall set header.status = 'processed', and header.processedDate = 'getdate()'.
3.2) If bpel processing fails (e.g. hits a data error while processing the selected data) the logical delete (UPDATE) operation shall set header.status = 'failed', header.processedDate = 'getdate()', and header.errorMsg = '{some text returned from bpel}'.
Several parts of #3 are not supported by the JDeveloper UI: updating multiple columns to mark the row processed, using getdate() to populate a value of one of those column updates, doing different update operations based on the results of the BPEL processing of the data (success or error), and using data obtained from BPEL processing as a value of those column updates (error message).
I have found examples which describe specifying custom SQL using the polling delete option to create a template then modifying the toplink file(s) to specify custom select and update SQL to implement a logical delete. (e.g. http://dlimiter.wordpress.com/2009/11/05/advanced-logic-in-oracle-bpel-polling-database-adapter/ and http://myexperienceswithsoa.blogspot.com/2010/06/db-adapter-polling-tricks.html). But none of them match what I've got in my project, in the first case because maybe because I'm using a higher version of JDeveloper, and in the second I think because in my case two tables are involved.
Any suggestions would be appreciated. Thanks, JohnHi John,
You've raised a good scenario.
First of all let me say that the purpose of the DB polling transaction, is to have an option to initiate a process from a DB table/view and not to update multiple fields in a table (or have other complex manipulation on the table).
So, when choose to update a field in a record, after reading it, you are "telling" the engine not to poll this record again. Sure, i guess you can find a solution/workaround for it, but I don't think this is the way....
The question now is what to do?
You can have another DB adapter where you can update the data after finishing the process. In that case, after reading the data (on polling transaction) - update the header.status = 'processed' for example, and after processing the selected data update the rest of the fields.
Hope it make some sense to you.
Arik -
Polling DB Adapter example by Oracle
Hi,
I am trying to implement the polling DB adapter example provided by oracle.I am using the option of deleting the rows after they were read.The below are my sql queries created.
Polling SQL:
SELECT TITLE, DIRECTOR, STARRING, SYNOPSIS, GENRE, RUN_TIME, RELEASE_DATE, RATED, RATING, VIEWER_RATING, STATUS, TOTAL_GROSS, DELETED, SEQUENCENO, LAST_UPDATED, POLLING_STRATEGY FROM MOVIES_IN WHERE (POLLING_STRATEGY = 'Delete') ORDER BY TITLE ASC
After Read SQL:
DELETE FROM MOVIES_IN WHERE (TITLE = #TITLE).
In the Polling SQL when i use the condition POLLING_STRATEGY = 'Delete',it gives me the following exceptions in the soa server log and polling doesnt happen,although i have updated the polling_strategy colum value as 'Delete'.
<May 11, 2012 7:22:22 AM IST> <Error> <oracle.soa.adapter> <BEA-000000> <Database Adapter PollingDbAdapters <oracle.tip.adapter.db.InboundWork handleException> Encountered a fatal exception while polling. Will continue polling but with minimal logging. Please investigate the fault and manua
DBActivationSpec Polling Exception.
Query name: [DeleteAdapterSelect], Descriptor name: [DeleteAdapter.MoviesIn]. Polling the database for events failed on this iteration.
Caused by javax.resource.spi.InvalidPropertyException: BINDING.JCA-11615
Invalid Property Exception.
The property [DBActivationSpec.pollingStrategy] is invalid.
Caused by java.lang.ClassNotFoundException: .
Make sure the property is valid in the interaction (activation) spec by editing its definition in the wsdl. Refer to the Configuring the Database Adapter Guide.
This exception is considered not retriable, likely due to a modelling mistake. This polling process will shut down, unless the fault is related to processing a particular row, in which case polling will continue but the row will be rejected (faulted).
at oracle.tip.adapter.db.exceptions.DBResourceException.createNonRetriableException(DBResourceException.java:690)
at oracle.tip.adapter.db.exceptions.DBResourceException.createEISException(DBResourceException.java:656)
at oracle.tip.adapter.db.exceptions.DBResourceException.inboundReadException(DBResourceException.java:491)
at oracle.tip.adapter.db.InboundWork.handleException(InboundWork.java:983)
at oracle.tip.adapter.db.InboundWork.run(InboundWork.java:568)
at oracle.tip.adapter.db.inbound.InboundWorkWrapper.run(InboundWorkWrapper.java:43)
at oracle.integration.platform.blocks.executor.WorkManagerExecutor$1.run(WorkManagerExecutor.java:120)
at weblogic.work.j2ee.J2EEWorkManager$WorkWithListener.run(J2EEWorkManager.java:184)
at weblogic.work.DaemonWorkThread.run(DaemonWorkThread.java:30)
Caused by: javax.resource.spi.InvalidPropertyException: BINDING.JCA-11615
Invalid Property Exception.
The property [DBActivationSpec.pollingStrategy] is invalid.
Caused by java.lang.ClassNotFoundException: .
Make sure the property is valid in the interaction (activation) spec by editing its definition in the wsdl. Refer to the Configuring the Database Adapter Guide.
at oracle.tip.adapter.db.DBActivationSpec.createPollingStrategy(DBActivationSpec.java:437)
at oracle.tip.adapter.db.InboundWork.initPollingStrategy(InboundWork.java:476)
at oracle.tip.adapter.db.InboundWork.init(InboundWork.java:368)
at oracle.tip.adapter.db.InboundWork.run(InboundWork.java:564)
... 4 more
>
java.lang.NullPointerException
at oracle.tip.adapter.db.InboundWork.handleException(InboundWork.java:1047)
at oracle.tip.adapter.db.InboundWork.run(InboundWork.java:568)
at oracle.tip.adapter.db.inbound.InboundWorkWrapper.run(InboundWorkWrapper.java:43)
at oracle.integration.platform.blocks.executor.WorkManagerExecutor$1.run(WorkManagerExecutor.java:120)
at weblogic.work.j2ee.J2EEWorkManager$WorkWithListener.run(J2EEWorkManager.java:184)
at weblogic.work.DaemonWorkThread.run(DaemonWorkThread.java:30)
[TopLink Info]: 2012.05.11 07:25:11.098--ServerSession(672505459)--TopLink, version: Oracle TopLink - 11g Release 1 (11.1.1.6.0) (Build 111018)
[TopLink Info]: 2012.05.11 07:25:11.099--ServerSession(672505459)--Server: WebLogic Server 10.3.6.0 Tue Nov 15 08:52:36 PST 2011 1441050
[TopLink Info]: 2012.05.11 07:25:11.110--ServerSession(672505459)--businessrules_session_oracle login successful
<May 11, 2012 7:33:47 AM IST> <Warning> <Log Management> <BEA-170011> <The LogBroadcaster on this server failed to broadcast log messages to the admin server. The Admin server may not be running. Message broadcasts to the admin server will be disabled.>
<May 11, 2012 8:04:10 AM IST> <Notice> <WebLogicServer> <BEA-000388> <JVM called WLS shutdown hook. The server will force shutdown now>
<May 11, 2012 8:04:10 AM IST> <Alert> <WebLogicServer> <BEA-000396> <Server shutdown has been requested by <WLS Kernel>>
<May 11, 2012 8:04:40 AM IST> <Notice> <WebLogicServer> <BEA-000378> <Server failed to shutdown within the configured timeout of 30 seconds. The server process will exit now.>
<May 11, 2012 8:04:40 AM IST> <Error> <> <BEA-000000> <cannot load libary 'stackdump': java.lang.UnsatisfiedLinkError: no stackdump in java.library.path
Can any of you please guide.Thanks in Advance
Thanks
ManishHi Manish,
Can you copy paste your .jca file?
I think the problem is with the name 'pollingStrategy'. Verify if the property used in the .jca file is PollingStrategy (Use Capital 'P').
Regards,
Neeraj Sehgal -
DS 4.0 MSExcel adapter error
Hi all,
we have installed Data Services 4.0 in Linux SLES 11. It is a distributed installation with Data Services (job Server, Access server, Message Client, ODBC driver) on one server and DS integration to BI 4.0 on second server (DS Management Console and APS services).
The problem which I experienced is a problem with Adapters. When I successfully add MSExcel adapter and try to start it, the Data Services suddenly end up with an communication failure below:
2/24/12 10:45:58 AM Thread[main,5,main] Unable to connect to job server '<hostname>:6600'. Error= Communication failure. ^M
2/24/12 10:45:58 AM Thread[main,5,main] com.acta.adapter.sdk.AdapterException: Unable to connect to job server '<hostname>:6600'. Error= Communication failure.
at com.acta.adapter.sdk.AdapterEnvironmentImpl.init(AdapterEnvironmentImpl.java:184)
at com.acta.adapter.sdk.AdapterRunnerImpl.initAdapter(AdapterRunnerImpl.java:231)
at com.acta.adapter.sdk.AdapterMain.main(AdapterMain.java:46)
I am able to add other adapter and run them, the problem is only with the MSExcel. After the error occurs, there is no way how to stop or remove the adapter as in the DS Management Console you permanently see this error and only deleting of adapter.key and startup_script.xml on OS level resolves the issue. But than I have to recreate the whole Adapters again (and just for sure I created a new Job server again).
Any help is appreciated.
Thanks!
Erik.Hi Erik,
Thanks for your reply, In my Case SSL is Enabled but here i am getting the message from other extenal sources but suddenly it crash and failed.
This issus is still there in BODS 3.2 and i already refer below SNotes regarding that but noluck.
1824972 - Get error: "Unable to connect to the Job Server '<Server Name>:<Port>'. Error: Connection refused. (BODI-3016234)" when try to run job from Data Services Management Console
I am getiing the below error in Adapter Trace and Error Log:
Adapter Trace Log Details:
/30/13 5:38:57 AM Thread[Thread-26,5,main] JMSGetOperation: getMessageFromRequestQueue function out
7/30/13 5:38:57 AM Thread[Thread-26,5,main] JMSGetOperation: Poll function out
7/30/13 5:38:57 AM Thread[Thread-26,5,main] JMSGetOperation: Poll function in...
7/30/13 5:38:57 AM Thread[Thread-26,5,main] JMSGetOperation: getMessageFromRequestQueue function in...
7/30/13 5:38:58 AM Thread[Thread-22,5,main] JMSGetOperation: getMessageFromRequestQueue function out
7/30/13 5:38:58 AM Thread[Thread-22,5,main] JMSGetOperation: Poll function out
7/30/13 5:38:58 AM Thread[Thread-22,5,main] JMSGetOperation: Poll function in...
7/30/13 5:38:58 AM Thread[Thread-22,5,main] JMSGetOperation: getMessageFromRequestQueue function in...
7/30/13 5:38:58 AM Thread[Thread-28,5,main] JMSGetOperation: getMessageFromRequestQueue function out
7/30/13 5:38:58 AM Thread[Thread-28,5,main] JMSGetOperation: Poll function out
7/30/13 5:38:58 AM Thread[Thread-28,5,main] JMSGetOperation: Poll function in...
7/30/13 5:38:58 AM Thread[Thread-28,5,main] JMSGetOperation: getMessageFromRequestQueue function in...
7/30/13 5:38:58 AM Thread[Thread-27,5,main] JMSGetOperation: getMessageFromRequestQueue function out
7/30/13 5:38:58 AM Thread[Thread-27,5,main] JMSGetOperation: Poll function out
7/30/13 5:38:58 AM Thread[Thread-27,5,main] JMSGetOperation: Poll function in...
Adapter Error Log Details:
Unable to connect to job server 'sapdsq01:4001'. Error= Client id adapter.JMS_Adapter_QA is already in use
7/29/13 7:19:52 AM com.acta.adapter.sdk.AdapterException: Unable to connect to job server 'sapdsq01:4001'. Error= Client id adapter.JMS_Adapter_QA is already in use
at com.acta.adapter.sdk.AdapterEnvironmentImpl.init(AdapterEnvironmentImpl.java:185)
at com.acta.adapter.sdk.AdapterRunnerImpl.initAdapter(AdapterRunnerImpl.java:251)
at com.acta.adapter.sdk.AdapterMain.main(AdapterMain.java:46)
Thanks,
Daya -
Unable to create database due to ORA-12560, TNS protocol adapter error
Hello,
I'm trying to create an 8.1.7.0 database on a W2k server, but it is failing because as soon as svrmgrl is launched, I get an ORA-12560, TNS: protocol adapter error:
D:\oracle\db_creation_scripts>D:\oracle\ora81\bin\svrmgrl @D:\oracle\db_creation_scripts\mterm62run.sql
Oracle Server Manager Release 3.1.7.0.0 - Production
Copyright (c) 1997, 1999, Oracle Corporation. All Rights Reserved.
ORA-12560: TNS:protocol adapter errorEcho ON
SVRMGR> connect INTERNAL/manager
ORA-12560: TNS:protocol adapter error
SVRMGR> startup nomount pfile="D:\oracle\admin\mterm62\pfile\initmterm62.ora"
LCC-00161: Message 161 not found; product=RDBMS; facility=MGR
My ORACLE_HOME, ORACLE_SID, and TNS_ADMIN environmental variables are correctly set, and I'm able to tnsping the listener.
I've enabled tracing, and my client trace file is:
--- TRACE CONFIGURATION INFORMATION FOLLOWS ---
New trace stream is d:\trace\client_trace.log_2084_9.trc
New trace level is 6
--- TRACE CONFIGURATION INFORMATION ENDS ---
--- PARAMETER SOURCE INFORMATION FOLLOWS ---
Attempted load of system pfile source d:\oracle\ora81\network\admin\sqlnet.ora
Parameter source loaded successfully
Attempted load of local pfile source D:\oracle\db_creation_scripts\sqlnet.ora
Parameter source was not loaded
-> PARAMETER TABLE LOAD RESULTS FOLLOW <-
Successful parameter table load
-> PARAMETER TABLE HAS THE FOLLOWING CONTENTS <-
TRACE_DIRECTORY_SERVER = d:\trace
TRACE_DIRECTORY_CLIENT = d:\trace
NAMES.DIRECTORY_PATH = (TNSNAMES, HOSTNAME)
SQLNET.CRYPTO_SEED = 4fhfguweotcadsfdsafjkdsfqp5f201p45mxskdlfdasf
TRACE_FILE_CLIENT = client_trace.log
TRACE_FILE_SERVER = server_trace.log
SQLNET.AUTHENTICATION_SERVICES = (NTS)
TRACE_UNIQUE_CLIENT = on
TRACE_LEVEL_CLIENT = ADMIN
TRACE_LEVEL_SERVER = ADMIN
--- PARAMETER SOURCE INFORMATION ENDS ---
--- LOG CONFIGURATION INFORMATION FOLLOWS ---
Log stream will be "D:\oracle\db_creation_scripts\sqlnet.log"
Log stream validation not requested
--- LOG CONFIGURATION INFORMATION ENDS ---
nigini: entry
nigini: Count in NI global area now: 1
nigini: Count in NI global area now: 1
nrigbi: entry
nrigbni: entry
nrigbni: Unable to get data from navigation file tnsnav.ora
nrigbni: exit
nrigbi: exit
nigini: exit
niqname: Hst is already an NVstring.
niqname: Inserting CID.
niotns: entry
niotns: niotns: setting up interrupt handler...
niotns: Not trying to enable dead connection detection.
niotns: Calling address: (DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=BEQ)(PROGRAM=oracle)(ARGV0=oracleMTERM62)(ARGS='(DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))')))(CONNECT_DATA=(SID=MTERM62)(CID=(PROGRAM=D:\oracle\ora81\bin\SVRMGRL.EXE)(HOST=SERV0354)(USER=tarisa))))
nsmal: 140 bytes at 0x12493f0
nscall: connecting...
nladini: entry
nladini: exit
nladget: entry
nladget: exit
nlpcaini: entry
nlpcaini: prg =
nlpcaini: arg[0] =
nlpcaini: arg[1] =
nlpcaini: exit
nsmal: 420 bytes at 0x12542f0
nsmal: 1712 bytes at 0x12572f0
nsopen: opening transport...
ntpcon: entry
ntpcon: toc = 1
sntpcall: entry
snlpcss: entry
ntpcon: exit
nserror: nsres: id=0, op=65, ns=12560, ns2=0; nt[0]=530, nt[1]=2, nt[2]=0; ora[0]=0, ora[1]=0, ora[2]=0
nsopen: unable to open transport
nsmfr: 1712 bytes at 0x12572f0
nsmfr: 420 bytes at 0x12542f0
nladget: entry
nladget: exit
nsmfr: 140 bytes at 0x12493f0
nladtrm: entry
nladtrm: exit
nioqper: error from nscall
nioqper: nr err code: 0
nioqper: ns main err code: 12560
nioqper: ns (2) err code: 0
nioqper: nt main err code: 530
nioqper: nt (2) err code: 2
nioqper: nt OS err code: 0
niomapnserror: entry
niqme: entry
niqme: reporting NS-12560 error as ORA-12560
niqme: exit
niomapnserror: returning error 12560
niomapnserror: exit
niotns: Couldn't connect, returning 12560
niotns: exit
nigtrm: Count in the NI global area is now 0
nnfgdei: entry
nrigbd: entry
nrigbd: exit
nigtrm: Count in the NL global area is now 0
My tnsnames, listener and sqlnet.ora files are very simple:
## BEGIN TNSNAMES.ORA
# TNSNAMES.ORA Network Configuration File: D:\oracle\ora81\NETWORK\ADMIN\tnsnames.ora
# Generated by Oracle configuration tools.
MTERM62 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.3.1.75)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = mterm62)
(INSTANCE_NAME = mterm62)
INST1_HTTP =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.3.1.75)(PORT = 1521))
(CONNECT_DATA =
(SERVER = SHARED)
(SERVICE_NAME = mterm62)
(PRESENTATION = http://admin)
# LISTENER.ORA Network Configuration File: D:\oracle\ora81\NETWORK\ADMIN\listener.ora
# Generated by Oracle configuration tools.
LISTENER =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = serv0354)(PORT = 1521))
SID_LIST_LISTENER =
(SID_DESC =
(ORACLE_HOME = D:\oracle\ora81)
(SID_NAME = mterm62)
TRACE_LEVEL_LISTENER = ADMIN
# SQLNET.ORA Network Configuration File: D:\oracle\ora81\NETWORK\ADMIN\sqlnet.ora
# Generated by Oracle configuration tools.
TRACE_DIRECTORY_CLIENT = d:\trace
TRACE_UNIQUE_CLIENT = on
TRACE_DIRECTORY_SERVER = d:\trace
SQLNET.AUTHENTICATION_SERVICES= (NTS)
TRACE_FILE_CLIENT = client_trace.log
TRACE_FILE_SERVER = server_trace.log
TRACE_LEVEL_CLIENT = ADMIN
TRACE_LEVEL_SERVER = ADMIN
NAMES.DIRECTORY_PATH= (TNSNAMES, HOSTNAME)
SQLNET.CRYPTO_SEED = 4fhfguweotcadsfdsafjkdsfqp5f201p45mxskdlfdasf
Does anyone have any ideas what else I can check. I'm a Unix person, not a Windows person, which is making it even more complicated. If I was on Unix, I'd just blow everything away and start again from scratch, but since I'm not sure how to remove all traces from the registry, etc., I don't want to try that on this machine. There was already one other database created, but it's not goign to be used.
Any help would be greatly appreciated.
regards,
Tarisa.hi,
thanks for the info. the problem, as it turns out, was that I was connected to the db server via a terminal service (Microsoft Management Console), which for some reason caused probelms with TNS. After I connected directly to the machine using VNC, I was able to create the database with no problems. strange but true.
regards,
Tarisa. -
Use of current time for polling Database Adapter query
I am writing a simple BPEL process with a Polling Database Adapter and a Recieve. The idea is that we are polling an XE database for any entries in a TRIP table which have an expiration date/time field that has passed.
The Adapter was build using JDeveloper 10.1.3.2 (with Oracle Application Server patched to 10.1.3.3.0) as a "Poll for New Changed Records in a Table" Operation type with a STATUS field (0 for live, 1 for expired) as the Logical Delete Field.
I was unable to find a way to generate a SELECT query expression with the wizard that would allow me to use current/system time as an attribute, so I finished the wizard and edited the Toplink Descriptor to use a custom SQL expression for the query. This resulted in the following code in the toplink_mappings.xml file:
<?xml version="1.0" encoding="UTF-8"?>
<toplink:object-persistence version="Oracle TopLink - 10g Release 3 (10.1.3.1.0) (Build 061004)"
xmlns:opm="http://xmlns.oracle.com/ias/xsds/opm" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:toplink="http://xmlns.oracle.com/ias/xsds/toplink"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<opm:name>ExpiredTripPoller</opm:name>
<opm:class-mapping-descriptors>
<opm:class-mapping-descriptor xsi:type="toplink:relational-class-mapping-descriptor">
<opm:class>ExpiredTripPoller.Trip</opm:class>
<opm:alias>Trip</opm:alias>
<opm:primary-key>
<opm:field table="TRIP" name="ID" xsi:type="opm:column"/>
</opm:primary-key>
<opm:events xsi:type="toplink:event-policy"/>
<opm:querying xsi:type="toplink:query-policy">
<opm:queries>
<opm:query name="ExpiredTripPoller" xsi:type="toplink:read-all-query">
<toplink:timeout>0</toplink:timeout>
<toplink:call xsi:type="toplink:sql-call">
<toplink:sql>SELECT ID, LPN, START_TIME, EXPIRY_TIME, STATUS FROM TRIP WHERE ((STATUS = '0') AND (EXPIRY_TIME < SYSDATE)) ORDER BY EXPIRY_TIME ASC</toplink:sql>
</toplink:call>
<toplink:reference-class>ExpiredTripPoller.Trip</toplink:reference-class>
<toplink:cache-usage>primary-key</toplink:cache-usage>
<toplink:lock-mode>none</toplink:lock-mode>
<toplink:container xsi:type="toplink:list-container-policy">
<toplink:collection-type>java.util.Vector</toplink:collection-type>
</toplink:container>
</opm:query>
<opm:query name="findAllTrip" xsi:type="toplink:read-all-query">
<toplink:timeout>0</toplink:timeout>
<toplink:reference-class>ExpiredTripPoller.Trip</toplink:reference-class>
<toplink:cache-usage>primary-key</toplink:cache-usage>
<toplink:lock-mode>none</toplink:lock-mode>
<toplink:container xsi:type="toplink:list-container-policy">
<toplink:collection-type>java.util.Vector</toplink:collection-type>
</toplink:container>
</opm:query>
</opm:queries>
<toplink:does-exist-query xsi:type="toplink:does-exist-query">
<toplink:existence-check>check-database</toplink:existence-check>
</toplink:does-exist-query>
<toplink:read-all-query xsi:type="toplink:read-all-query">
<toplink:reference-class>ExpiredTripPoller.Trip</toplink:reference-class>
<toplink:container xsi:type="toplink:list-container-policy">
<toplink:collection-type>java.util.Vector</toplink:collection-type>
</toplink:container>
</toplink:read-all-query>
</opm:querying>
<opm:attribute-mappings>
<opm:attribute-mapping xsi:type="toplink:direct-mapping">
<opm:attribute-name>id</opm:attribute-name>
<opm:field table="TRIP" name="ID" xsi:type="opm:column"/>
<opm:attribute-classification>java.math.BigDecimal</opm:attribute-classification>
</opm:attribute-mapping>
<opm:attribute-mapping xsi:type="toplink:direct-mapping">
<opm:attribute-name>lpn</opm:attribute-name>
<opm:field table="TRIP" name="LPN" xsi:type="opm:column"/>
<opm:attribute-classification>java.lang.String</opm:attribute-classification>
</opm:attribute-mapping>
<opm:attribute-mapping xsi:type="toplink:direct-mapping">
<opm:attribute-name>startTime</opm:attribute-name>
<opm:field table="TRIP" name="START_TIME" xsi:type="opm:column"/>
<opm:attribute-classification>java.sql.Timestamp</opm:attribute-classification>
</opm:attribute-mapping>
<opm:attribute-mapping xsi:type="toplink:direct-mapping">
<opm:attribute-name>expiryTime</opm:attribute-name>
<opm:field table="TRIP" name="EXPIRY_TIME" xsi:type="opm:column"/>
<opm:attribute-classification>java.sql.Timestamp</opm:attribute-classification>
</opm:attribute-mapping>
<opm:attribute-mapping xsi:type="toplink:direct-mapping">
<opm:attribute-name>status</opm:attribute-name>
<opm:field table="TRIP" name="STATUS" xsi:type="opm:column"/>
<opm:attribute-classification>java.math.BigDecimal</opm:attribute-classification>
</opm:attribute-mapping>
</opm:attribute-mappings>
<toplink:descriptor-type>independent</toplink:descriptor-type>
<toplink:caching>
<toplink:cache-type>weak-reference</toplink:cache-type>
<toplink:always-refresh>true</toplink:always-refresh>
</toplink:caching>
<toplink:remote-caching>
<toplink:cache-type>weak-reference</toplink:cache-type>
</toplink:remote-caching>
<toplink:instantiation/>
<toplink:copying xsi:type="toplink:instantiation-copy-policy"/>
<toplink:change-policy xsi:type="toplink:deferred-detection-change-policy"/>
<toplink:tables>
<toplink:table name="TRIP"/>
</toplink:tables>
</opm:class-mapping-descriptor>
</opm:class-mapping-descriptors>
</toplink:object-persistence>
To test I used the above custom SQL at the command line and it filtered the records by EXPIRY_TIME as expected.
When deployed, the polling process updates the STATUS file dof table entries, but all entries with status 0 regardless of EXPIRY_DATE. My modification appears to be being ignored. I was unsure as to whether the QUERY was being determined in some other way so I modified the descriptor (with the toplink expression editor) to compare against a literal time value, producing the following modified toplink_mappings.xml:
<?xml version="1.0" encoding="UTF-8"?>
<toplink:object-persistence version="Oracle TopLink - 10g Release 3 (10.1.3.1.0) (Build 061004)"
xmlns:opm="http://xmlns.oracle.com/ias/xsds/opm" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:toplink="http://xmlns.oracle.com/ias/xsds/toplink"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<opm:name>ExpiredTripPoller</opm:name>
<opm:class-mapping-descriptors>
<opm:class-mapping-descriptor xsi:type="toplink:relational-class-mapping-descriptor">
<opm:class>ExpiredTripPoller.Trip</opm:class>
<opm:alias>Trip</opm:alias>
<opm:primary-key>
<opm:field table="TRIP" name="ID" xsi:type="opm:column"/>
</opm:primary-key>
<opm:events xsi:type="toplink:event-policy"/>
<opm:querying xsi:type="toplink:query-policy">
<opm:queries>
<opm:query name="ExpiredTripPoller" xsi:type="toplink:read-all-query">
<opm:criteria operator="lessThan" xsi:type="toplink:relation-expression">
<toplink:left name="expiryTime" xsi:type="toplink:query-key-expression">
<toplink:base xsi:type="toplink:base-expression"/>
</toplink:left>
<toplink:right xsi:type="toplink:constant-expression">
<toplink:value xsi:type="xsd:date">2007-07-30</toplink:value>
</toplink:right>
</opm:criteria>
<toplink:timeout>0</toplink:timeout>
<toplink:reference-class>ExpiredTripPoller.Trip</toplink:reference-class>
<toplink:cache-usage>primary-key</toplink:cache-usage>
<toplink:lock-mode>none</toplink:lock-mode>
<toplink:container xsi:type="toplink:list-container-policy">
<toplink:collection-type>java.util.Vector</toplink:collection-type>
</toplink:container>
</opm:query>
<opm:query name="findAllTrip" xsi:type="toplink:read-all-query">
<toplink:timeout>0</toplink:timeout>
<toplink:reference-class>ExpiredTripPoller.Trip</toplink:reference-class>
<toplink:cache-usage>primary-key</toplink:cache-usage>
<toplink:lock-mode>none</toplink:lock-mode>
<toplink:container xsi:type="toplink:list-container-policy">
<toplink:collection-type>java.util.Vector</toplink:collection-type>
</toplink:container>
</opm:query>
</opm:queries>
<toplink:does-exist-query xsi:type="toplink:does-exist-query">
<toplink:existence-check>check-database</toplink:existence-check>
</toplink:does-exist-query>
<toplink:read-all-query xsi:type="toplink:read-all-query">
<toplink:reference-class>ExpiredTripPoller.Trip</toplink:reference-class>
<toplink:container xsi:type="toplink:list-container-policy">
<toplink:collection-type>java.util.Vector</toplink:collection-type>
</toplink:container>
</toplink:read-all-query>
</opm:querying>
<opm:attribute-mappings>
<opm:attribute-mapping xsi:type="toplink:direct-mapping">
<opm:attribute-name>id</opm:attribute-name>
<opm:field table="TRIP" name="ID" xsi:type="opm:column"/>
<opm:attribute-classification>java.math.BigDecimal</opm:attribute-classification>
</opm:attribute-mapping>
<opm:attribute-mapping xsi:type="toplink:direct-mapping">
<opm:attribute-name>lpn</opm:attribute-name>
<opm:field table="TRIP" name="LPN" xsi:type="opm:column"/>
<opm:attribute-classification>java.lang.String</opm:attribute-classification>
</opm:attribute-mapping>
<opm:attribute-mapping xsi:type="toplink:direct-mapping">
<opm:attribute-name>startTime</opm:attribute-name>
<opm:field table="TRIP" name="START_TIME" xsi:type="opm:column"/>
<opm:attribute-classification>java.sql.Timestamp</opm:attribute-classification>
</opm:attribute-mapping>
<opm:attribute-mapping xsi:type="toplink:direct-mapping">
<opm:attribute-name>expiryTime</opm:attribute-name>
<opm:field table="TRIP" name="EXPIRY_TIME" xsi:type="opm:column"/>
<opm:attribute-classification>java.sql.Timestamp</opm:attribute-classification>
</opm:attribute-mapping>
<opm:attribute-mapping xsi:type="toplink:direct-mapping">
<opm:attribute-name>status</opm:attribute-name>
<opm:field table="TRIP" name="STATUS" xsi:type="opm:column"/>
<opm:attribute-classification>java.math.BigDecimal</opm:attribute-classification>
</opm:attribute-mapping>
</opm:attribute-mappings>
<toplink:descriptor-type>independent</toplink:descriptor-type>
<toplink:caching>
<toplink:cache-type>weak-reference</toplink:cache-type>
<toplink:always-refresh>true</toplink:always-refresh>
</toplink:caching>
<toplink:remote-caching>
<toplink:cache-type>weak-reference</toplink:cache-type>
</toplink:remote-caching>
<toplink:instantiation/>
<toplink:copying xsi:type="toplink:instantiation-copy-policy"/>
<toplink:change-policy xsi:type="toplink:deferred-detection-change-policy"/>
<toplink:tables>
<toplink:table name="TRIP"/>
</toplink:tables>
</opm:class-mapping-descriptor>
</opm:class-mapping-descriptors>
</toplink:object-persistence>
On deployment, this version of the BPEL process behaved as expected - only modifying the records with EXPIRY_TIME less thatn the literal time specified. (Also, I can't really pass in the time as a parameter as this is a polling model).
Can anyone shed any light on what is happening or suggest how I might go about polling in the desired way?
CheersPlease take a look at this article which states SYSDATE is not supported in a
where clause.
http://www.oracle.com/technology/pub/articles/bpel_cookbook/qualcomm-bpel.html
Excerpt from the article:
Here are three important things you should do in implementing the above design:
Have the status of the record being processed stored in the database. The status includes the process state, next process attempt time, and processing attempt count.
Create an updatable view that exposes only records that are ready to be processed. A view is needed because the database adapter cannot handle a where clause that compares against SYSDATE.
Design logic that determines if a process instance that has faulted should be retried and when the retry should occur. This information will be updated in the database by use of a stored procedure. This can also be done with an update partner link and additional logic in BPEL.
mahalo,
a iii -
"TNS: Protocol adapter error" while creating a database
Hi All,
I´m new to Oracle and trying to create a database.
We use Oracle 8.1.7
I´m using the Database Configuration Assistant. The problem is when creating the database I get the error:
TNS-12560 TNS: Protocol adapter error
Any help will be really appreciated.
Thanks in advance,
Carlos.Do you have ORACLE_HOME and/or ORACLE_SID defined in the environment which are different than the settings for the new database that you are trying to create?
-
Error in Jdev while running the "home" page in WebCenter Portal Application
Hi All,
I am using Jdev 11.1.1.6 with WebCenter extensions installed.
I created a WebCenter Portal -Framework Application, in the folders created there is a home page which is giving the below error in Jdev Stack while trying to run it.
Can someone help me how to go ahead from this.
<EclipseLinkLogger> <basicLog> 2012-04-19 16:23:43.067--ServerSession(5023997)--PersistenceUnitInfo ServiceFrameworkPUnit has transactionType RESOURCE_LOCAL and therefore jtaDataSource will be ignored
<LifecycleServletContextListener> <doImportExportSet>
oracle.webcenter.lifecycle.LifecycleException: MDSException while creating an export set import lock
at oracle.webcenter.lifecycle.operation.LockUnit.doImportExportSet(LockUnit.java:359)
at oracle.webcenter.lifecycle.operation.ImportExportSetOperation.doImportExportSet(ImportExportSetOperation.java:106)
at oracle.webcenter.lifecycle.LifecycleService.doImportExportSet(LifecycleService.java:585)
at oracle.webcenter.lifecycle.listener.LifecycleServletContextListener.doImportExportSet(LifecycleServletContextListener.java:361)
at oracle.webcenter.lifecycle.listener.LifecycleServletContextListener.contextInitialized(LifecycleServletContextListener.java:148)
at weblogic.servlet.internal.EventsManager$FireContextListenerAction.run(EventsManager.java:481)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.internal.EventsManager.notifyContextCreatedEvent(EventsManager.java:181)
at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1872)
at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:3153)
at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1508)
at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:482)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
at weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:200)
at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:247)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:27)
at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:636)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:205)
at weblogic.application.internal.EarDeployment.activate(EarDeployment.java:58)
at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:161)
at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:79)
at weblogic.deploy.internal.targetserver.operations.AbstractOperation.activate(AbstractOperation.java:569)
at weblogic.deploy.internal.targetserver.operations.ActivateOperation.activateDeployment(ActivateOperation.java:150)
at weblogic.deploy.internal.targetserver.operations.ActivateOperation.doCommit(ActivateOperation.java:116)
at weblogic.deploy.internal.targetserver.operations.AbstractOperation.commit(AbstractOperation.java:323)
at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentCommit(DeploymentManager.java:844)
at weblogic.deploy.internal.targetserver.DeploymentManager.activateDeploymentList(DeploymentManager.java:1253)
at weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(DeploymentManager.java:440)
at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.commit(DeploymentServiceDispatcher.java:163)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:195)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$100(DeploymentReceiverCallbackDeliverer.java:13)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:68)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
Caused by: oracle.mds.exception.ReadOnlyStoreException: MDS-01273: The operation on the resource /oracle/webcenter/lock/exportsetImport/exportsetImport.xml failed because source metadata store mapped to the namespace / DEFAULT is read only.
at oracle.mds.core.MDSSession.checkAndSetWriteStoreInUse(MDSSession.java:2495)
at oracle.mds.core.MDSSession.checkAndSetWriteStoreInUse(MDSSession.java:2548)
at oracle.mds.core.BeanMetadataObject.createInstanceInternal(BeanMetadataObject.java:363)
at oracle.mds.core.BeanMetadataObject.access$000(BeanMetadataObject.java:74)
at oracle.mds.core.BeanMetadataObject$1.run(BeanMetadataObject.java:319)
at java.security.AccessController.doPrivileged(Native Method)
at oracle.mds.core.BeanMetadataObject.createInstance(BeanMetadataObject.java:313)
at oracle.webcenter.lock.schema.jaxb.LockMO.createInstance(LockMO.java:40)
at oracle.webcenter.lock.LockService.createLockDocument(LockService.java:442)
at oracle.webcenter.lock.LockService.createLock(LockService.java:176)
at oracle.webcenter.lifecycle.operation.LockUnit.doImportExportSet(LockUnit.java:336)
... 41 more
<ProfileFactory> <<clinit>>
java.lang.ClassCastException: oracle.webcenter.peopleconnections.profile.config.beans.PeopleconnProfileConfigImpl cannot be cast to oracle.webcenter.peopleconnections.profile.config.beans.PeopleconnProfileConfig
at oracle.webcenter.peopleconnections.profile.ProfileFactory.<clinit>(ProfileFactory.java:113)
at oracle.webcenter.peopleconnections.profile.LifecycleListener.contextInitialized(LifecycleListener.java:76)
at oracle.webcenter.framework.internal.view.WCFrameworkContextListener.contextInitialized(WCFrameworkContextListener.java:354)
at weblogic.servlet.internal.EventsManager$FireContextListenerAction.run(EventsManager.java:481)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.internal.EventsManager.notifyContextCreatedEvent(EventsManager.java:181)
at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1872)
at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:3153)
at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1508)
at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:482)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
at weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:200)
at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:247)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:27)
at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:636)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:205)
at weblogic.application.internal.EarDeployment.activate(EarDeployment.java:58)
at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:161)
at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:79)
at weblogic.deploy.internal.targetserver.operations.AbstractOperation.activate(AbstractOperation.java:569)
at weblogic.deploy.internal.targetserver.operations.ActivateOperation.activateDeployment(ActivateOperation.java:150)
at weblogic.deploy.internal.targetserver.operations.ActivateOperation.doCommit(ActivateOperation.java:116)
at weblogic.deploy.internal.targetserver.operations.AbstractOperation.commit(AbstractOperation.java:323)
at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentCommit(DeploymentManager.java:844)
at weblogic.deploy.internal.targetserver.DeploymentManager.activateDeploymentList(DeploymentManager.java:1253)
at weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(DeploymentManager.java:440)
at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.commit(DeploymentServiceDispatcher.java:163)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:195)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$100(DeploymentReceiverCallbackDeliverer.java:13)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:68)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
<ProfileFactory> <getProfileManager> null
<ADFContext> <getCurrent> Automatically initializing a DefaultContext for getCurrent.
Caller should ensure that a DefaultContext is proper for this use.
Memory leaks and/or unexpected behaviour may occur if the automatic initialization is performed improperly.
This message may be avoided by performing initADFContext before using getCurrent().
For more information please enable logging for oracle.adf.share.ADFContext at FINEST level.
<Apr 19, 2012 4:23:43 PM IST> <Warning> <HTTP> <BEA-101162> <User defined listener oracle.webcenter.framework.internal.view.WCFrameworkContextListener failed: java.lang.InstantiationError: ServiceContext resource configuration file "META-INF/context.provider" found, but the class defined "class oracle.webcenter.framework.internal.service.DefaultServiceContext" is not an instance of oracle.webcenter.framework.service.ServiceContext..
java.lang.InstantiationError: ServiceContext resource configuration file "META-INF/context.provider" found, but the class defined "class oracle.webcenter.framework.internal.service.DefaultServiceContext" is not an instance of oracle.webcenter.framework.service.ServiceContext.
at oracle.webcenter.framework.service.ServiceContext.getContext(ServiceContext.java:248)
at oracle.webcenter.peopleconnections.connections.ConnectionsServiceFactory.getInstance(ConnectionsServiceFactory.java:96)
at oracle.webcenter.peopleconnections.connections.LifecycleListener.contextInitialized(LifecycleListener.java:59)
at oracle.webcenter.framework.internal.view.WCFrameworkContextListener.contextInitialized(WCFrameworkContextListener.java:354)
at weblogic.servlet.internal.EventsManager$FireContextListenerAction.run(EventsManager.java:481)
Truncated. see log file for complete stacktrace
>
<WCFrameworkCacheUtils> <createRegion> cannot access Java Object Cache
<PortletServletContextListener> <contextDestroyed> MBean deregistration problem
INFO: Found persistence provider "org.eclipse.persistence.jpa.PersistenceProvider". OpenJPA will not be used.
INFO: Found persistence provider "org.eclipse.persistence.jpa.PersistenceProvider". OpenJPA will not be used.
<ProfileFactory> <getProfileManager> null
<LifecycleListener> <contextDestroyed> java.lang.NullPointerException
<BPELConnectionUtil> <getWorklistConnections> The Worklist service does not have a ConnectionName configuration entry in adf-config.xml that maps to a BPELConnection in connections.xml, therefore the Worklist service was not configured for this application.
<ADFContext> <getCurrent> Automatically initializing a DefaultContext for getCurrent.
Caller should ensure that a DefaultContext is proper for this use.
Memory leaks and/or unexpected behaviour may occur if the automatic initialization is performed improperly.
This message may be avoided by performing initADFContext before using getCurrent().
For more information please enable logging for oracle.adf.share.ADFContext at FINEST level.
<Apr 19, 2012 4:23:43 PM IST> <Warning> <HTTP> <BEA-101162> <User defined listener oracle.webcenter.framework.internal.view.WCFrameworkContextListener failed: java.lang.InstantiationError: ServiceContext resource configuration file "META-INF/context.provider" found, but the class defined "class oracle.webcenter.framework.internal.service.DefaultServiceContext" is not an instance of oracle.webcenter.framework.service.ServiceContext..
java.lang.InstantiationError: ServiceContext resource configuration file "META-INF/context.provider" found, but the class defined "class oracle.webcenter.framework.internal.service.DefaultServiceContext" is not an instance of oracle.webcenter.framework.service.ServiceContext.
at oracle.webcenter.framework.service.ServiceContext.getContext(ServiceContext.java:248)
at oracle.webcenter.peopleconnections.connections.ConnectionsServiceFactory.getInstance(ConnectionsServiceFactory.java:96)
at oracle.webcenter.peopleconnections.connections.LifecycleListener.contextDestroyed(LifecycleListener.java:83)
at oracle.webcenter.framework.internal.view.WCFrameworkContextListener.contextDestroyed(WCFrameworkContextListener.java:203)
at weblogic.servlet.internal.EventsManager$FireContextListenerAction.run(EventsManager.java:482)
Truncated. see log file for complete stacktrace
Regards, Suma EmaniDo you have any space in jdeveloper workspace directory ?
i.e C:\Document and settings like path.
Also mention the default integrated domain's path.
If any space is present then create a new domain and workspace without containing any space and run your application.
Regards,
Hoque -
I installed Oracle 9i (9.2.0.1.0) on a Windows XP machine (the machine is in a domain). There were no errors during the instalation, but I have problems connecting from the same machine using the sid. Here are some examples from a command promt:
D:\>tnsping orcl9i
TNS Ping Utility for 32-bit Windows: Version 9.2.0.1.0 - Production on 31-OCT-20
08 17:43:22
Copyright (c) 1997 Oracle Corporation. All rights reserved.
Used parameter files:
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)
(HOST = timisoara01)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = orcl9i)))
TNS-12560: TNS:protocol adapter error
D:\>sqlplus "sys/pass@orcl9i as sysdba"
SQL*Plus: Release 9.2.0.1.0 - Production on Fri Oct 31 17:54:54 2008
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
ERROR:
ORA-12535: TNS:operation timed out
Enter user-name:If I don't use the sid I can connect:
D:\>sqlplus "sys/pass as sysdba"
SQL*Plus: Release 9.2.0.1.0 - Production on Fri Oct 31 18:05:46 2008
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
Connected to:
Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
With the OLAP and Oracle Data Mining options
JServer Release 9.2.0.1.0 - Production
SQL>If I go to services I see that the service is running: OracleServiceORCL9I Started.
Thx.Yes, the XP firewall is running. During the Oracle instalation it poped up twice, but I selected 'Unblock'. I can't turn it off because it is running using the domain settings, but I can add exceptions (programs or ports). Port 1521, tnsping or sqlplus are not blocked and there is an option 'Display a notification when Windows Firewall blocks a program' witch is checked.
-
File adapter error after updating to SP19 (INBOUND_BINDING_ERROR)
File adapter error after updating to SP19 (INBOUND_BINDING_ERROR)
Hi all,
im having some troubles after the installation of SP19 (from SP16 in NW04) with File Adapter (File->Idoc scenario).
In message monitoring (Adapter Engine), I have several messages with status "System Error". The error text is :
<i>Received XI System Error. ErrorCode: INBOUND_BINDING_ERROR
ErrorText: ErrorStack: Error in sender agreement for party '', service 'LEGACY_DEV', interface namespace 'http://XXXXX.com/XXXXXX', interface 'INTERFACE_OB' No sender agreement found for , , , , ,</i>
Im sure that the Integration Directory settings have not been changed. So I tried the following, but the problem persists:
- Deactivation/Activation of File Adapter channel
- check that user XIISUSER is not locked
- checked SXI_CACHE (it seems ok)
- Many CPA full refresh
- Dummy modifications of File Adapter channels (a dummy modification of the description)
- Reboot J2EE
I've seen that someone else had problems after upgrading to SP19. I'd really appreciate any suggestion of how to solve my issue.
Thank you
ManuelHi Prabhu,
I've already tried to restart server, but nothing happened. (Before update to SP19, the interface worked well).
This is the error log from message monitoring:
<i> 2007-01-16 16:37:34 Success Channel cc_File_Snd_Bolle: Entire file content converted to XML format
2007-01-16 16:37:34 Success Send binary file "BOLLE_20061229142059.CSV" from FTP server "AS810T:/sapinbound", size 8733 bytes with QoS EOIO
2007-01-16 16:37:34 Success Application attempting to send an XI message asynchronously using connection AFW.
2007-01-16 16:37:34 Success Trying to put the message into the send queue.
2007-01-16 16:37:35 Success Message successfully put into the queue.
2007-01-16 16:37:35 Success The application sent the message asynchronously using connection AFW. Returning to application.
2007-01-16 16:37:35 Success The message was successfully retrieved from the send queue.
2007-01-16 16:37:35 Success File "BOLLE_20061229142059.CSV" successfully archived on FTP server "AS810T" as "/sapinbound/bolle/20070116-163735-245_BOLLE_20061229142059.CSV"
2007-01-16 16:37:35 Success The message status set to DLNG.
<b>2007-01-16 16:37:35 Error Received XI System Error. ErrorCode: INBOUND_BINDING_ERROR ErrorText: ErrorStack: Error in sender agreement for party '', service 'LEGACY_DEV', interface namespace http://XXXXX.com/XXXXXX', interface 'INTERFACE_OB' No sender agreement found for , , , , ,
2007-01-16 16:37:35 Error Transmitting the message to endpoint http://SERVERNAME:8000/sap/xi/engine?type=entry using connection AFW failed, due to: com.sap.aii.af.ra.ms.api.RecoverableException: INBOUND_BINDING_ERROR:. </b>
2007-01-16 16:37:35 Success The asynchronous message was successfully scheduled to be delivered at Tue Jan 16 16:42:35 CET 2007.
2007-01-16 16:37:35 Success The message status set to WAIT.
2007-01-16 16:42:35 Success Retrying to send message. Retry: 1</i>
After this, the system try to resend the message, and the same error appears several times.
Ty,
Manuel -
HI All
i am doing a scenario SFTP to mail adapter, i am sending a file to SFTP ADAPTER and Mail adapter send the mail to clint, i am using java mapping , i have checked the message in RWB mesage is fail in mail adapte,
ERROR : Message processing failed. Cause: java.lang.Exception: java.io.IOException: server does not support PLAIN or LOGIN authentication
anyone suggest me soloution?Hi Pankaj,
Remove your mail server user id and password and keep authentication mode as Plain and try in mail adapter configuration.
You can try accessing ID from within IR via menu options or via a direct URL.
Thanks, -
TNS-12560: TNSrotocol adapter error
Iu2019m installing SAP ERP 6.0 on a Windows server 2008 with Oracle 10.2.0.4.0.
First of all I installed the Oracle software by means of Oracle Universal Installer.Then I used the Sapinst tool. At the step u201CConfigure Oracle server Networku201D I get an error. In the lsnrctl.log file I can read:
TNS-12560: TNSrotocol adapter error
TNS-00530: Protocol adapter error
These are my .ora files in the path <oracle-home>\NETWORK\ADMIN::
1 )LISTENER.ORA
ADMIN_RESTRICTIONS_LISTENER = on
LISTENER =
(ADDRESS_LIST =
(ADDRESS =
(PROTOCOL = IPC)
(KEY = DEV.WORLD)
(ADDRESS=
(PROTOCOL = IPC)
(KEY = DEV)
(ADDRESS =
(COMMUNITY = SAP.WORLD)
(PROTOCOL = TCP)
(HOST = SAP-BTdemo)
(PORT = 1527)
STARTUP_WAIT_TIME_LISTENER = 0
CONNECT_TIMEOUT_LISTENER = 10
TRACE_LEVEL_LISTENER = OFF
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = DEV)
(ORACLE_HOME = F:\oracle\DEV\102)
2) SQLnet.ora:
AUTOMATIC_IPC = ON
TRACE_LEVEL_CLIENT = OFF
NAMES.DEFAULT_DOMAIN = WORLD
05.01.06 unsorported parameter now
#NAME.DEFAULT_ZONE = WORLD
05.01.06 set the default to 10
SQLNET.EXPIRE_TIME = 10
SQLNET.AUTHENTICATION_SERVICES = (NTS)
05.01.06 set to default
#TCP.NODELAY=YES
05.01.06 set to 32768
DEFAULT_SDU_SIZE=32768
3) tnsname.ora:
DEV.WORLD=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS =
(COMMUNITY = SAP.WORLD)
(PROTOCOL = TCP)
(HOST = SAP-BTdemo)
(PORT = 1527)
(CONNECT_DATA =
(SID = DEV)
(GLOBAL_NAME = DEV.WORLD)
I have set the following Environment Variables:
u2022 ORACLE_HOME = F:\oracle\DEV\102
u2022 ORACLE _SID= DEV
u2022 TNS_ADMIN= F:\oracle\DEV\102\NETWORK\ADMIN
I have installed Oracle by Universal Installer and, in the Server Manager, I got only the following Oracle Service:
OracleDEV102iSQL*Plus
If I use the command lsnrctl start from Windows prompt I get the same error.
Can anyone help me?Ok, I made all the things that you say: installed Oracle sw, installed the Opatch end started SAPinst.
But SAPinst stops when configuring oracle server network. I really don't understand what to do. If i write the command of LSNRCTL and tnsping the DEV (my DBsid) i have the following error:
LSNRCTL> services
Connecting to (ADDRESS=(PROTOCOL=IPC)(KEY=DEV.WORLD))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
64-bit Windows Error: 2: No such file or directory
Connecting to (ADDRESS=(PROTOCOL=IPC)(KEY=DEV))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
64-bit Windows Error: 2: No such file or directory
Connecting to (ADDRESS=(COMMUNITY=SAP.WORLD)(PROTOCOL=TCP)(HOST=10.32.33.4)(PORT
=1527))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
64-bit Windows Error: 61: Unknown error
LSNRCTL> status
Connecting to (ADDRESS=(PROTOCOL=IPC)(KEY=DEV.WORLD))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
64-bit Windows Error: 2: No such file or directory
Connecting to (ADDRESS=(PROTOCOL=IPC)(KEY=DEV))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
64-bit Windows Error: 2: No such file or directory
Connecting to (ADDRESS=(COMMUNITY=SAP.WORLD)(PROTOCOL=TCP)(HOST=10.32.33.4)(PORT
=1527))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
64-bit Windows Error: 61: Unknown error
C:\SAPinst>tnsping DEV
TNS Ping Utility for 64-bit Windows: Version 10.2.0.4.0 - Production on 27-OCT-2
010 14:11:45
Copyright (c) 1997, 2007, Oracle. All rights reserved.
Used parameter files:
F:\oracle\DEV\102\NETWORK\ADMIN\sqlnet.ora
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (COMMUNITY = SAP
.WORLD) (PROTOCOL = TCP) (HOST = 10.32.33.4) (PORT = 1527))) (CONNECT_DATA = (SI
D = DEV) (GLOBAL_NAME = DEV.WORLD)))
TNS-12541: TNS:no listener
Why isn't SAPINST able to use the listener??
Edited by: Paolo Rubino on Oct 27, 2010 3:16 PM -
ORA-12560 TNS protocol Adapter error in 11g (11.1.0.6)
Hello All,
I have Oracle 11g installed on my machine and when i tried to log in to sql plus i got the error below:
ORA-12560 TNS protocol Adapter error
By setting the ORACLE_SID = orcl by browsing to the bin directory of Oracle Installation the above error disappaears and i am able to log in from sql plus.
My intention is to create a db backup for which i am trying to use the exp command...this time the same error appears.
Also the solution of setting the ORACLE_SID is cumbersome..everytimt i want to use sql plus i need to go in and set the ORACLE_SID.
Can anybody please help me out find a good solution for this?
Any help would be appreciated friends.....
Thanks in Advance!!!!!
Regards.
AliciaAlso the solution of setting the ORACLE_SID is cumbersome..everytimt i want to use sql plus i need to go in and set the ORACLE_SID.
Can anybody please help me out find a good solution for this?The solution depends on your (not specified) operating system...
Anyway, if you have more than one database it's normal that you have to set ORACLE_SID, if not how can Oracle know which database you want to access to ?
You can create batch files, one per database, or you can use connection strings, e.g. sqlplus username/password@<DB>. -
ORA-12560: TNS:protocol adapter error in Oracle Forms...
Hi, I installed Oracle developer suite to use for Oracle forms but am getting "ORA-12560: TNS:protocol adapter error" when trying to run a form. The database is running locally on my PC.
I've run the command line to see if hostname matches up with the "HOST= " in the ".../network/admin/listener.ora " file match, they do. What can I try next? I did have Oracle 10gXE installed, which I have now removed. I'm including my tnsnames and listener file content:
# tnsnames.ora Network Configuration File: C:\oracle\product\10.2.0\db_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.
LISTENER_ORCL =
(ADDRESS = (PROTOCOL = TCP)(HOST = frankenputer)(PORT = 1522))
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = frankenputer)(PORT = 1522))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
# listener.ora Network Configuration File: C:\oracle\product\10.2.0\db_1\network\admin\listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = C:\oracle\product\10.2.0\db_1)
(PROGRAM = extproc)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = frankenputer)(PORT = 1522))
Thanks in advance for any help!Of course you found another one. Each .and every Oracle database client home (such as developer, app server) has one.
Don't just change the port - the tnsnames.ora in the dev home does not point to a database service. It only points to an extproc [external procedure called by a database]. You need to put a database service entry into that file similar to the one in the database home. (Easiest solution - copy the tnsnames.ora from db home ... after you've made a backup)
And please don't tell me you are using Developer 6i - a simple Google search would verify that the networking is incompatible. -
Oracle 8i tns:protocol adapter error
Hello,
I am programmer and wanted to try and learn oracle
database. I am trying to install Oracle 8i Releae 8.1.5
developer edition (which I got with a book) on windows NT 4.0
with service pack 6. But after doing a minimal install when and
creating a database I am unable to access that database using
SQL plus. Whenever I try to connect an error message is
displayed saying:
"ora12560TNS: protocol adapter error."
I tried to install it on my friends machine on one
friends computer it worked but on another's it didn't work. Same
message appears on that friends machine also who is using
windows 2000 professional.
Could you please tell me what could be the problem.
Because I am able to connect to database using mmc snap-in
provided for database administration.
Also during installation it displays a message about a
single missing .tmp file in a sub-directory which is many levels
deeper than the directory where oracle is being installed. File
name I think is nmconf.tmp.
I hope you can suggest me some way to solve this problem.
Sukhwinder SinghCheck if you have enough space and the required permissions to write to the temporary directory used by the installer during installation.
We had a similar problem on a UNIX installation which was eventually traced to a non-writable temporary directory that caused the installation to silently fail, which effectively caused the TCP/IP protocol adapter not to be installed.
Maybe you are looking for
-
Modifying Workflow in the Enterprise Portal
Hi , I have a requirement in ESS expense claim. once the claim has been made that will be send to his line manager for approval. In the line manager inbox some button label has to be changed in EP. I have the system admin rights and content admin rig
-
How can we improve the rebuid script in 10g
Hi Plateform solaris = SunOS 5.9 current database version is = 9.2.0.7 Our client ir migrating database to oracle 10g. I don't have much knowledge on 10g for reorg of indexes I have been using following scripts in 9.2.0.7 alter index GMOWNER.INDEX_34
-
ISE 1.1.1 Sponsor Portal - Unable to create First Names with "-"
Hi! Regarding our international subsidiaries there are many names that contain the character "-" (i.e. Pierre-Pascal) When trying to create an new Guest Account the ISE refuses it because of an invalid character in the "First Name" field. In other fo
-
Itunes is not upload my podcast, so i thought my feed may have some problem, so i decided to change the feed. I send a e-mail to itunes, it is about i want to remove the current feed, and upload a need feed. After one day, my podcast has been upload
-
Printing book-style in preview or adobe acrobat
I have a pdf document that i want to print in a book-style. I want to print two pages per sheet horisontally, and have it like a book, so, for example, the first page and the last page are on one side of a sheet, the second page and the second last p