Linux + Oracle vs WCF service
I'm having a problem between Linux /Oracle calling a WCF service.
My client uses Oracle/Linux to send/receive data to my service, but it's using iso-8859-1 encoding, wich is not accepted by WCF (utf standard).
I've found some solutions for this problem, but all involves DLLs installation and Windows, what is not possible with Linux.
Unfortunately i don't know nothing about Oracle, and i don't know if it's possible to my client encode the data before sending/receiving to me.
I'd appreciate some help.
Thanks!
The linux client can continue sending the data as it pleases (i.e., in iso-8859-1), and the encoder, used on the server only, would be able to read it. The encoder then can decide how to encode the response back to the client (UTF-8 or iso-8859-1 again).
If you want the response to be in iso-8859-1 as well you may also need something like a message inspector to update the content-type header with the appropriate charset.
Update: example with the custom encoder using ISO-8859-1
public class StackOverflow_7033442 { [ServiceContract] public interface ITest { [OperationContract] string Echo(string text); } public class Service : ITest { public string Echo(string text) { return text; } } public static void Test() { string baseAddress = "http://" + Environment.MachineName + ":8000/Service"; ServiceHost host = new ServiceHost(typeof(Service), new Uri(baseAddress)); CustomBinding binding = new CustomBinding( new CustomTextMessageBindingElement("iso-8859-1", "text/xml", MessageVersion.Soap11), new HttpTransportBindingElement()); host.AddServiceEndpoint(typeof(ITest), binding, ""); host.Open(); Console.WriteLine("Host opened"); string request = @"<?xml version=""1.0"" encoding=""iso-8859-1""?> <s:Envelope xmlns:s=""http://schemas.xmlsoap.org/soap/envelope/""> <s:Body> <Echo xmlns=""http://tempuri.org/""> <text>Hello áéíóú</text> </Echo> </s:Body> </s:Envelope>"; HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create(baseAddress); req.Method = "POST"; req.ContentType = "text/xml; charset=iso-8859-1"; req.Headers["SOAPAction"] = "http://tempuri.org/ITest/Echo"; Stream reqStream = req.GetRequestStream(); Encoding encoding = Encoding.GetEncoding("iso-8859-1"); byte[] reqBytes = encoding.GetBytes(request); reqStream.Write(reqBytes, 0, reqBytes.Length); reqStream.Close(); HttpWebResponse resp = (HttpWebResponse)req.GetResponse(); Console.WriteLine("HTTP/{0} {1} {2}", resp.ProtocolVersion, (int)resp.StatusCode, resp.StatusDescription); foreach (var header in resp.Headers.AllKeys) { Console.WriteLine("{0}: {1}", header, resp.Headers[header]); } if (resp.ContentLength > 0) { Console.WriteLine(new StreamReader(resp.GetResponseStream(), encoding).ReadToEnd()); } Console.Write("Press ENTER to close the host"); Console.ReadLine(); host.Close(); } #region Custom Text Message Encoder sample, verbatim public class CustomTextMessageEncoder : MessageEncoder { private CustomTextMessageEncoderFactory factory; private XmlWriterSettings writerSettings; private string contentType; public CustomTextMessageEncoder(CustomTextMessageEncoderFactory factory) { this.factory = factory; this.writerSettings = new XmlWriterSettings(); this.writerSettings.Encoding = Encoding.GetEncoding(factory.CharSet); this.contentType = string.Format("{0}; charset={1}", this.factory.MediaType, this.writerSettings.Encoding.HeaderName); } public override string ContentType { get { return this.contentType; } } public override string MediaType { get { return factory.MediaType; } } public override MessageVersion MessageVersion { get { return this.factory.MessageVersion; } } public override Message ReadMessage(ArraySegment<byte> buffer, BufferManager bufferManager, string contentType) { byte[] msgContents = new byte[buffer.Count]; Array.Copy(buffer.Array, buffer.Offset, msgContents, 0, msgContents.Length); bufferManager.ReturnBuffer(buffer.Array); MemoryStream stream = new MemoryStream(msgContents); return ReadMessage(stream, int.MaxValue); } public override Message ReadMessage(Stream stream, int maxSizeOfHeaders, string contentType) { XmlReader reader = XmlReader.Create(stream); return Message.CreateMessage(reader, maxSizeOfHeaders, this.MessageVersion); } public override ArraySegment<byte> WriteMessage(Message message, int maxMessageSize, BufferManager bufferManager, int messageOffset) { MemoryStream stream = new MemoryStream(); XmlWriter writer = XmlWriter.Create(stream, this.writerSettings); message.WriteMessage(writer); writer.Close(); byte[] messageBytes = stream.GetBuffer(); int messageLength = (int)stream.Position; stream.Close(); int totalLength = messageLength + messageOffset; byte[] totalBytes = bufferManager.TakeBuffer(totalLength); Array.Copy(messageBytes, 0, totalBytes, messageOffset, messageLength); ArraySegment<byte> byteArray = new ArraySegment<byte>(totalBytes, messageOffset, messageLength); return byteArray; } public override void WriteMessage(Message message, Stream stream) { XmlWriter writer = XmlWriter.Create(stream, this.writerSettings); message.WriteMessage(writer); writer.Close(); } } public class CustomTextMessageEncoderFactory : MessageEncoderFactory { private MessageEncoder encoder; private MessageVersion version; private string mediaType; private string charSet; internal CustomTextMessageEncoderFactory(string mediaType, string charSet, MessageVersion version) { this.version = version; this.mediaType = mediaType; this.charSet = charSet; this.encoder = new CustomTextMessageEncoder(this); } public override MessageEncoder Encoder { get { return this.encoder; } } public override MessageVersion MessageVersion { get { return this.version; } } internal string MediaType { get { return this.mediaType; } } internal string CharSet { get { return this.charSet; } } } public class CustomTextMessageBindingElement : MessageEncodingBindingElement, IWsdlExportExtension { private MessageVersion msgVersion; private string mediaType; private string encoding; private XmlDictionaryReaderQuotas readerQuotas; CustomTextMessageBindingElement(CustomTextMessageBindingElement binding) : this(binding.Encoding, binding.MediaType, binding.MessageVersion) { this.readerQuotas = new XmlDictionaryReaderQuotas(); binding.ReaderQuotas.CopyTo(this.readerQuotas); } public CustomTextMessageBindingElement(string encoding, string mediaType, MessageVersion msgVersion) { if (encoding == null) throw new ArgumentNullException("encoding"); if (mediaType == null) throw new ArgumentNullException("mediaType"); if (msgVersion == null) throw new ArgumentNullException("msgVersion"); this.msgVersion = msgVersion; this.mediaType = mediaType; this.encoding = encoding; this.readerQuotas = new XmlDictionaryReaderQuotas(); } public CustomTextMessageBindingElement(string encoding, string mediaType) : this(encoding, mediaType, MessageVersion.Soap11WSAddressing10) { } public CustomTextMessageBindingElement(string encoding) : this(encoding, "text/xml") { } public CustomTextMessageBindingElement() : this("UTF-8") { } public override MessageVersion MessageVersion { get { return this.msgVersion; } set { if (value == null) throw new ArgumentNullException("value"); this.msgVersion = value; } } public string MediaType { get { return this.mediaType; } set { if (value == null) throw new ArgumentNullException("value"); this.mediaType = value; } } public string Encoding { get { return this.encoding; } set { if (value == null) throw new ArgumentNullException("value"); this.encoding = value; } } // This encoder does not enforces any quotas for the unsecure messages. The // quotas are enforced for the secure portions of messages when this encoder // is used in a binding that is configured with security. public XmlDictionaryReaderQuotas ReaderQuotas { get { return this.readerQuotas; } } #region IMessageEncodingBindingElement Members public override MessageEncoderFactory CreateMessageEncoderFactory() { return new CustomTextMessageEncoderFactory(this.MediaType, this.Encoding, this.MessageVersion); } #endregion public override BindingElement Clone() { return new CustomTextMessageBindingElement(this); } public override IChannelFactory<TChannel> BuildChannelFactory<TChannel>(BindingContext context) { if (context == null) throw new ArgumentNullException("context"); context.BindingParameters.Add(this); return context.BuildInnerChannelFactory<TChannel>(); } public override bool CanBuildChannelFactory<TChannel>(BindingContext context) { if (context == null) throw new ArgumentNullException("context"); return context.CanBuildInnerChannelFactory<TChannel>(); } public override IChannelListener<TChannel> BuildChannelListener<TChannel>(BindingContext context) { if (context == null) throw new ArgumentNullException("context"); context.BindingParameters.Add(this); return context.BuildInnerChannelListener<TChannel>(); } public override bool CanBuildChannelListener<TChannel>(BindingContext context) { if (context == null) throw new ArgumentNullException("context"); context.BindingParameters.Add(this); return context.CanBuildInnerChannelListener<TChannel>(); } public override T GetProperty<T>(BindingContext context) { if (typeof(T) == typeof(XmlDictionaryReaderQuotas)) { return (T)(object)this.readerQuotas; } else { return base.GetProperty<T>(context); } } #region IWsdlExportExtension Members void IWsdlExportExtension.ExportContract(WsdlExporter exporter, WsdlContractConversionContext context) { } void IWsdlExportExtension.ExportEndpoint(WsdlExporter exporter, WsdlEndpointConversionContext context) { // The MessageEncodingBindingElement is responsible for ensuring that the WSDL has the correct // SOAP version. We can delegate to the WCF implementation of TextMessageEncodingBindingElement for this. TextMessageEncodingBindingElement mebe = new TextMessageEncodingBindingElement(); mebe.MessageVersion = this.msgVersion; ((IWsdlExportExtension)mebe).ExportEndpoint(exporter, context); } #endregion } #endregion }
Similar Messages
-
WHERE ARE Linux Oracle Services (as in NT) ?
WHERE ARE the Linux Oracle Services created by the OUI (such as listener, db, apache, etc) and how cn i start / stop them automatically ?
Also, is there in any place "the oracle program group menus" like in WINDOWS START MENU, so we can see all programs installed ?
I Installed 9iAS release 2 in RedHat
ThanksI use 8.1.7 on LInux. There are dbshut and dbstart scripts in $ORACLE_HOME/bin and there is example of "service-script" in Installation Guiede. So you can create "service-scripts", put in in /etc/rc.d/init.d and usecommends like /etc/rc.d/init/oradb start/stop, besides it you can make links for this script in rc.0, rc.6, rc.3 etc.. (like other services). You may write me a letter ([email protected]) and I'll send you service-scripts, if you will have troubles.
-
How to install downloaded Oracle Forms Developer/Services 6i Release 2 for linux
Hi folks,
I downloaded d2k6irelease2.tar (Oracle Forms Developer/Services 6i Release
2 for linux) from
http://otn.oracle.com/software/products/forms/htdocs/linuxsoft.html
I untar the file on my linux machine however the extracted files don't
seem to contain any installing program. I didn't find products.jar in the
files and there are no script to install the software. I read the attached
doc, however it only assumes that the installation is from CD-ROM. The doc
doesn't help anything for this downloaded software. I wonder if anyone
here know how to install it. Thank you so much.
Best regards,
Kai HuangThere should be a text based installer in the /orainst sub-
directory
In that directory, just run the script:
./orainst
The installer seems to require libXm.a, which wasn't included in
my RH 7.1 installation, so I had to install the motif-
development libraries before the full install would complete
successfully. -
Calling a WCF service from pl sql using a scheduler.
Hi
I am completely new to everything pl sql related. Right now, I need to call a WCF service method that returns a dataset. Then i need to take that dataset and insert the data into a table in the database. I want to do this by having a scheduler be called once a day.
Does anyone have any code, examples etc?
thanksAnd WCF stands for what? In what version of the product?
First rule for someone new ... don't make the assumption that we can look over your shoulder or read your mind.
What you seem to want is the built-in scheduler. The docs are at http://tahiti.oracle.com.
Demos are at:
http://www.psoug.org/reference/dbms_scheduler.html -
SOLUTION MANAGER 7.1 install on linux/oracle java error on ABAP IMPORT
Hello sdn experts, Im trying to install the Solution Manager 7.1 on linux/oracle, but It always stops at the abap import,
The error is in the Program "Migration Monitor", that exit with error.
Reviewing the logs, it seems that is trying to execute a java command line with a unrecognized option:
"Execution of the command "/opt/IBMJava2-amd64-142/bin/java -classpath migmon.jar -showversion -Xmx1024m com.sap.inst.migmon.imp.ImportMonitor -sapinst" finished with return code 1. Output:
JVMJ9VM007E Command-line option unrecognized : -Xjvm:j9vm23"
Usage : java [-options] class...
As you can see, the sdk used is from IBM, and it works for all other saps we have here.
Is the wrong jdk? Which I should use if its wrong?
If is the right jdk, how could I get rid of this option and change it?
Any idea would be appreciated.
Thank youHi Maurici,
have you checked this note already?
[https://service.sap.com/sap/support/notes/1159935|https://service.sap.com/sap/support/notes/1159935]
It is about your error message. ...
Best, Hannes -
Background
1. Weblogic 10.3.6.0 running on Oracle Linux 6.5 with Oracle JRockit(R) (build R28.2.3-13-149708-1.6.0_31-20120327-1523-linux-x86_64, compiled mode)
2. Oracle Apex 4.2.1
3. Apex Listener 1.1.3
4. Apex and Apex Listener running on the Weblogic box above
5. SQL Developer 4.0.2 running on Windows 7 64 bit / Java 1.7.0_55
Updated Apex to 4.2.5 via p17966818_425_Generic.zip patchset. Apex environment running fine as do all applications via Listener 1.1.3
Updated Oracle Listener to the latest version of Oracle REST Data Services 2.0.7
Current Status
Apex Applications and RESTful services are running fine.
Problem
Unable to connect SQL Developer 4.0.2 to Oracle REST Data Services 2.0.7
Error message in SQL Developer - Cannot connect to DEV. HTTP/1.1 403 Target service not allowed
Additional Information
Steps followed -
1. The oracle users APEX_LISTENER and APEX_REST_PUBLIC_USER did not exist, so I ran apex_rest_config.sql from the APEX 2.4.1 patchset whilst connected sys as sysdba and provided the same password as APEX_PUBLIC_USER for both users.
2. I also ran
grant insert, delete on APEX_040200.wwv_flow_rt$privilege_groups to APEX_LISTENER;
alter session set current_schema = APEX_LISTENER;
create or replace synonym wwv_flow_rt$privilege_groups for APEX_040200.wwv_flow_rt$privilege_groups;
as per Oracle SQL Developer User's Guide Release 4.0
3. copied ords.war to apex.war
4. java -jar apex.war configdir /u01/app/oracle/admin/apex/devdomain1/
5. java -jar apex.war
Jun 5, 2014 5:15:31 PM oracle.dbtools.common.config.file.ConfigurationFolder logConfigFolder
INFO: Using configuration folder: /u01/app/oracle/admin/apex/devdomain1/apex
Enter the name of the database server [localhost]:dbservername
Enter the database listen port [1521]:
Enter 1 to specify the database service name, or 2 to specify the database SID [1]:1
Enter the database service name:dbservicename
Enter the database user name [APEX_PUBLIC_USER]:
Enter the database password for APEX_PUBLIC_USER:
Confirm password:
Enter 1 to enter passwords for the RESTful Services database users (APEX_LISTENER,APEX_REST_PUBLIC_USER), 2 to use the same password as used for APEX_PUBLIC_USER or, 3 to skip this step [1]:2
Jun 5, 2014 5:16:52 PM oracle.dbtools.common.config.file.ConfigurationFiles update
INFO: Updated configurations: defaults, apex, apex_al, apex_rt
Enter 1 if you wish to start in standalone mode or 2 to exit [1]:2
6. java -jar apex.war user adminlistener "Listener Administrator"
Jun 5, 2014 5:18:52 PM oracle.dbtools.common.config.file.ConfigurationFolder logConfigFolder
INFO: Using configuration folder: /u01/app/oracle/admin/apex/devdomain1/apex
Enter a password for user adminlistener:
Confirm password for user adminlistener:
Jun 6, 2014 5:19:12 PM AM oracle.dbtools.standalone.ModifyUser execute
INFO: Created user: adminlistener in file: /u01/app/oracle/admin/apex/devdomain1/apex/credentials
7. Updated the defaults.xml file
Added
<entry key="apex.security.user.roles">RESTful Services</entry>
<entry key="apex.security.developer.roles">OAuth2 Client Developer, SQL Developer</entry>
as per Oracle SQL Developer User's Guide Release 4.0
Changed
<entry key="debug.printDebugToScreen">false</entry>
to
<entry key="debug.printDebugToScreen">true</entry>
for RESTful debugging
Added
<entry key="security.verifySSL">false</entry>
to use OAuth2 in Non HTTPS Environment as per Oracle® REST Data Services Installation and Configuration Guide, Release 2.0
8. Deleted the Admin and Manager Roles within the apex application deployment which were part of the Apex Listener 1.1.3 install
9. Deployed the apex.war in weblogic
10. Stopped and started the weblogic server to which apex.war was deployed
11. In SQL Developer, View, RESTful Services. In the RESTful services windows hit connect, Create a new connection,
Connection Name DEV
Username adminlistener
selected http protocol
Hostname weblogicservername
Port 7250
Server Path /apex
Workspace (blank)
On the Authentication dialog
Username adminlistener
Password passwordsuppliedabove in step 6
Response is a dialog box titled Authentication Failed
message - Cannot connect to DEV. HTTP/1.1 403 Target service not allowed
NOTHING UNUSUAL IN ANY OF THE WEBLOGIC LOG FILES, EXCEPT THAT IT STATES
'Oracle REST Data Services version : 2.0.6.27.18.06' when I've installed 2.0.7.
Any help much appreciatedFurther to the above post, I thought I'd simplify my Apex Listener install just to see if I can connect to it via SQL Developer
So downloaded the latest version 2.0.8 and decided to configure and run the Listener on my pc whilst still connecting to the same database.
Operating system : Window 7 Pro 64 bit
Oracle Apex Listener 2.0.8
Java(TM) SE Runtime Environment (build 1.7.0_25-b17)
Java HotSpot(TM) 64-Bit Server VM (build 23.25-b01, mixed mode)
Went through the configuration as above, once started I tried again to access the listener via SQL Developer. This time I received this output from the listener:
INFO: Error: ORA-02291: integrity constraint (APEX_040200.WWV_FLOW_RT$APPROVALS_SGID_FK) violated - parent key not found, occurred during execution of: [CALL, insert into wwv_flow_rt$approvals (user_name,status,client_id,security_group_id,created_by,created_on,updated_by,updated_on) values(/*in:user_id*/?,/*in:status*/?,/*in:client_id*/?,/*in:tenant_id*/?,upper(/*in:user_id*/?),/*in:created*/?,upper(/*in:user_id*/?),/*in:created*/?), [tenant_id, in, class java.math.BigInteger], [client_id, in, class java.math.BigInteger], [user_id, in, class java.lang.String], [status, in, class oracle.dbtools.rt.oauth.ApprovalRequest$Status], [created, in, class java.sql.Timestamp]]with values: [adminlistener, APPROVED, 3858401374580004, -1, adminlistener, 2014-06-23 12:19:18.785, adminlistener, 2014-06-23 12:19:18.785]
SQL Developer responded with an Authentication Failed titled dialog with the following displayed in the body of the dialog
Cannot connect to DEV.
<!DOCTYPE html>
<!--[if lt IE 7 ]> <html class="ie6"> <![endif]-->
<!--[if IE 7 ]> <html class="ie7 no-css3"> <![endif]-->
<!--[if IE 8 ]> <html class="ie8 no-css3"> <![endif]-->
<!--[if IE 9 ]> <html class="ie9"> <![endif]-->
<!--[if (gt IE 9)|!(IE)]><!-->
<html>
<!--<![endif]-->
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<style type="text/css" media="screen">html,body,div,span,h3,p,ol,ul,li,header,hgroup{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}header,hgroup{display:block}body{font:normal 12px/16px Arial,sans-serif;margin:0 auto;background:#6a9cda}header#xHeader{border-bottom:1px solid #8fa4c0;position:relative;z-index:10;background:none #000}header#xHeader hgroup{width:974px;margin:0 auto;position:relative;height:36px;background:none #000}header#xHeader a#uLogo{margin:8px 0;display:inline-block;font:bold 14px/20px Arial,sans-serif;color:#AAA;text-decoration:none}header#xHeader a#uLogo span.logo{color:#F00}.no-css3 div#xContentContainer div.xContent{padding-top:14px}.no-css3 div#xContentContainer div.xContent div.xMainLeft h2{margin-top:0}div#xWhiteContentContainer{margin-bottom:30px}div#xWhiteContentContainer.xContentWide{background:#FFF;margin-bottom:0}div#xWhiteContentContainer.xContentWide div.xWhiteContent{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none}div#xWhiteContentContainer div.xWhiteContent{width:974px;margin:0 auto;padding:0 0 20px 0;background:#FFF;min-height:500px;-moz-border-radius:0 4px 4px 4px;-webkit-border-radius:0 4px 4px 4px;border-radius:0 4px 4px 4px;-moz-box-shadow:0 1px 2px rgba(0,0,0,0.15);-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.15);box-shadow:0 1px 2px rgba(0,0,0,0.15)}div#xContentHeaderContainer{background:#6a9cda;-moz-box-shadow:0 -1px 0 rgba(0,0,0,0.15) inset;-webkit-box-shadow:0 -1px 0 rgba(0,0,0,0.15) inset;box-shadow:0 -1px 0 rgba(0,0,0,0.15) inset}div#xContentHeaderContainer div.xContentHeader{width:974px;margin:0 auto;padding:30px 0 32px 0;position:relative;min-height:60px}div#xContentHeaderContainer div.xContentHeader h3{font:bold 24px/24px Arial,sans-serif;color:#fff;text-shadow:0 2px 1px rgba(0,0,0,0.25);margin:0 0 20px 0}div#xFooterContainer{min-height:200px;border-top:1px solid rgba(0,0,0,0.15);background:#6a9cda}body.errorPage div#xContentHeaderContainer div.xContentHeader{min-height:30px}body.errorPage div#xContentHeaderContainer div.xContentHeader h3{font:bold 30px/30px Arial,sans-serif;color:#FFF;text-shadow:0 1px 2px rgba(0,0,0,0.25);margin:0}div.errorPage p{font:normal 14px/20px Arial,sans-seri;color:#666;padding:0 0 10px 0}div.errorPage ul{list-style:disc outside;padding:0 10px 0;margin:0 0 20px 0}div.errorPage ul li{font:normal 12px/16px Arial,sans-serif;color:#666;margin:0 0 8px 10px}pre{font-family:Consolas,"Lucida Console","Courier New",Courier,monospace}
</style>
<script type="text/javascript" charset="utf-8">
'header hgroup'.replace(/\w+/g,
function(n) {
document.createElement(n)
</script>
<title>Internal Server Error</title>
</head>
<body class="errorPage">
<header id="xHeader">
<hgroup>
<a id="uLogo" href="./"><span class="logo">ORACLE</span>
REST DATA SERVICES</a>
</hgroup>
</header>
<div id="xContentHeaderContainer">
<div class="xContentHeader">
<h3>
<span class="statusCode">500</span> - <span
class="statusMessage">Internal Server Error</span>
</h3>
</div>
</div>
<div id="xWhiteContentContainer" class="xContentWide">
<div class="xWhiteContent">
<div class="errorPage">
<p>
<ul class="reasons">
</ul>
</p>
<p>
<pre>Request Path passes syntax validation
Mapping request to database pool: PoolMap [_failed=false, _lastUpdate=-1, _pattern=null, _poolName=apex, _regex=null, _type=REGEX, _workspaceIdentifier=null, _serviceName=null]
Applied database connection info
Attempting to process with PL/SQL Gateway
Not processed as PL/SQL Gateway request
Attempting to process as a RESTful Service
Choosing: oracle.dbtools.rt.oauth.TokenHandler as current candidate with score: Score [handle=null, score=0, scope=SecurityConfig [constraint=secure, realm=OAUTH_CLIENT, logonConfig=NONE], originsAllowed=[], corsEnabled=true]
Determining if request can be dispatched as a Tenanted RESTful Service
Request path has one path segment, continuing processing
No Tenant Principal established yet, continuing processing
APEX_LISTENER pool exists, continuing processing
No matching tenant found for: oauth2, cannot dispatch
Chose oracle.dbtools.rt.oauth.TokenHandler as the final candidate with score: Score [handle=null, score=0, scope=SecurityConfig [constraint=secure, realm=OAUTH_CLIENT, logonConfig=NONE], originsAllowed=[], corsEnabled=true] for: POST oauth2/token
oauth2/token authorized as: p6xycV-2QceFnFHkWyJlnA..
</pre>
</p>
<p>
<pre>WebException [statusCode=500]
at oracle.dbtools.rt.web.WebException.webException(WebException.java:343)
at oracle.dbtools.rt.web.WebException.internalError(WebException.java:262)
at oracle.dbtools.rt.oauth.jdbc.JDBCOAuthDataAccess.createApproval(JDBCOAuthDataAccess.java:514)
at oracle.dbtools.rt.oauth.jdbc.JDBCOAuthDataAccess.createApprovedRequest(JDBCOAuthDataAccess.java:181)
at oracle.dbtools.rt.oauth.OAuthAuthorization.resourceOwnerCredentials(OAuthAuthorization.java:654)
at oracle.dbtools.rt.oauth.OAuthAuthorization.tokenRequest(OAuthAuthorization.java:273)
at oracle.dbtools.rt.oauth.TokenHandler.post(TokenHandler.java:44)
at oracle.dbtools.rt.web.RequestHandler.response(RequestHandler.java:268)
at oracle.dbtools.rt.web.RequestHandler.dispatch(RequestHandler.java:361)
at oracle.dbtools.rt.web.RequestHandler.dispatch(RequestHandler.java:85)
at oracle.dbtools.rt.web.RequestDispatchers.dispatch(RequestDispatchers.java:93)
at oracle.dbtools.rt.web.ETags.checkPrecondition(ETags.java:93)
at oracle.dbtools.rt.web.HttpEndpointBase.restfulServices(HttpEndpointBase.java:426)
at oracle.dbtools.rt.web.HttpEndpointBase.service(HttpEndpointBase.java:164)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at com.sun.grizzly.http.servlet.ServletAdapter$FilterChainImpl.doFilter(ServletAdapter.java:1059)
at com.sun.grizzly.http.servlet.ServletAdapter$FilterChainImpl.invokeFilterChain(ServletAdapter.java:999)
at com.sun.grizzly.http.servlet.ServletAdapter.doService(ServletAdapter.java:434)
at oracle.dbtools.standalone.SecureServletAdapter.doService(SecureServletAdapter.java:91)
at com.sun.grizzly.http.servlet.ServletAdapter.service(ServletAdapter.java:379)
at com.sun.grizzly.tcp.http11.GrizzlyAdapter.service(GrizzlyAdapter.java:179)
at com.sun.grizzly.tcp.http11.GrizzlyAdapterChain.service(GrizzlyAdapterChain.java:196)
at com.sun.grizzly.tcp.http11.GrizzlyAdapter.service(GrizzlyAdapter.java:179)
at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:849)
at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:746)
at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1045)
at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:228)
at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
at java.lang.Thread.run(Unknown Source)
Caused by: java.sql.SQLIntegrityConstraintViolationException: ORA-02291: integrity constraint (APEX_040200.WWV_FLOW_RT$APPROVALS_SGID_FK) violated - parent key not found
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:447)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:396)
at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:879)
at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:505)
at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:223)
at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:531)
at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:208)
at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:1046)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1336)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3612)
at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:3713)
at oracle.jdbc.driver.OraclePreparedStatementWrapper.execute(OraclePreparedStatementWrapper.java:1378)
at sun.reflect.GeneratedMethodAccessor28.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at oracle.ucp.jdbc.proxy.StatementProxyFactory.invoke(StatementProxyFactory.java:230)
at oracle.ucp.jdbc.proxy.PreparedStatementProxyFactory.invoke(PreparedStatementProxyFactory.java:124)
at com.sun.proxy.$Proxy44.execute(Unknown Source)
at oracle.dbtools.common.jdbc.JDBCInsert.execute(JDBCInsert.java:58)
at oracle.dbtools.rt.oauth.jdbc.JDBCOAuthDataAccess.createApproval(JDBCOAuthDataAccess.java:487)
... 34 more
</pre>
</p>
</div>
</div>
</div>
<div id="xFooterContainer">
</div>
</body>
</html>
I am assuming this must be part of the problem I am seeing this the Weblogic deployment in my original post.
Does anyone have any suggestions on how best to tackle this?
Regards,
Derek -
"Your browser is not supported by Oracle BI Presentation Services"
Hi,
I have installed obiee11.1.1.5 on windows 7 and i am using Firefox 12.0 latest version.When I am trying to open analytics through firefox12.0 i am getting warning like “Your browser is not supported by Oracle BI Presentation Services” and it is opening in IE but charts are not displayed. Can any one tell me the solution for this?
Edited by: Uma on Apr 26, 2012 5:24 AMHi Uma,
good that your issue is resolved. we are generally modifying/adding the header to override the existing version to previous version, so instead of using the FF10+ header we are just modifying it to FF9 inorder to make it work
The UA string of Firefox itself is broken down into four components:
Mozilla/5.0 (platform; rv:geckoversion) Gecko/geckotrail Firefox/firefoxversion
Mozilla/5.0 is the general token that says the browser is Mozilla compatible, and is common to almost every browser today.
platform describes the native platform the browser is running on (e.g. Windows, Mac, or Linux). Note that platform can consist of multiple "; "-separated tokens. See below for further details and examples.
rv:geckoversion indicates the release version of Gecko (such as "10.0"). From Firefox 5.0 and Gecko 5.0 onwards, geckoversion is the same as firefoxversion (described below).
Gecko/geckotrail indicates that the browser is based on Gecko. geckotrail is "20100101" in desktop release builds and does not represent the actual build date of the browser. For desktop development builds, geckotrail presently indicates the build date of the browser, but this is likely to change in the future. Starting February 1st 2012, geckotrail is the same as geckoversion and firefoxversion in Firefox for Android with a native front end (aka. Fennec Native).
Firefox/firefoxversion indicates the browser is Firefox, and provides the version (such as "11.0").
Thanks,
RM -
Hosting WCF services on OSB 11G
Hi there,
I have been reading online to see if web services created through WCF can be hosted side by side in OSB 11G with Java services. I have found posts on how you can allow java web services hosted on OSB 11G to call wcf services, but i have found nothing on hosting WCF services.
Is this possible? If so, what are the advantages /disadvantages?
Thanks very much.
RitaOracle Service bus is all Java environment and I do not think you can host WCF web services(based on .NET) on Oracle Service Bus, however it may be possible for oracle service bus to inter operate with the WCF web services.
jayesh@yagna -
Exposing other classes (as well as the EF Model) from a WCF Service?
Hello,
I have been following some of the tutorials on the Oracle.Net development centre, such as creating a Data Service for the Entity framework:-
http://www.oracle.com/webfolder/technetwork/tutorials/obe/db/dotnet/EntityFrameworkWCF/WCFEntityFramework.htm
This is good - However, I have written a number of extra classes as part of my model i.e. buddy classes for data annotations/meta data (for strongly typed views) and various extra classes that contain LINQ statements looking at the EF Entity classes.
Can anyone explain how I go about moving all my classes to the WCF data service, such as above ?
I tried to alter the *.svc file (as created in above example like) to include more than one entity, but it's not keen:-
E.g.
public class TasService : DataService < TasEntities > *: DataService < OrganisationService>* //<-- this bit doesn't work
public static void InitializeService(DataServiceConfiguration config)
config.SetEntitySetAccessRule("*", EntitySetRights.All);
config.DataServiceBehavior.MaxProtocolVersion = DataServiceProtocolVersion.V2;
}I can find other example of creating a WCF library and hosting out services with I.P addresses stored in an App.config file, but the above example only stored a web.config file.
Thus, I have tried created a WCF Data Service and WCF Library, but still cannot successfully expose all my model classes + Entity Framework Model.
Does anyone have a solid example OR has anyone managed to achieve this task ? Someone must be in the know... please don't hold out on us mere mortals ......
Thanks,
Graeme
Edited by: user4487499 on 21-Apr-2011 03:24
Edited by: user4487499 on 21-Apr-2011 03:25Do you have any mapping done on the response message from the WCF service . ?
If so Better to copy the suspended message coming from the WCF service and validate against the custom response Schema you have created.
Note : You can try running fiddler tool to check the response from from the web service incase of failure.
Also try logging the message in the event viewer or any debug tool.
Thanks
Abhishek -
Oracle Forms Developer/Services 6i Release 2
Hi folks,
I downloaded d2k6irelease2.tar (Oracle Forms Developer/Services 6i Release
2 for linux) fromhttp://otn.oracle.com/software/products/forms/htdocs/linuxsoft.html
I untar the file on my linux machine however the extracted files don't
seem to contain any installing program. I didn't find products.jar in the
files and there are no script to install the software. I read the attached
doc, however it only assumes that the installation is from CD-ROM. The doc
doesn't help anything for this downloaded software. I wonder if anyone
here know how to install it. Thank you so much.
Best regards,
SlimHi,
First use gunzip utility to unzip .gz file. Once you are done, you will get a .tar file. Use tar -xvf to untar the file to a directory. It is similar to unzip.
Regards,
Arun -
How to install Oracle Forms Developer/Services 6i Release to Ubuntu
Oracle Forms Developer/Services 6i Release 2 for Linux
I've downloaded this software for ubuntu but I couldn't install.
Does anyone know how to install this package?Hi,
To my knowledge Forms Developer/Services 6i Release 2 are not certified for Ubuntu.
Check Certify: www.oracle.com/technology/support/metalink/index.html
Regards,
Martin -
Windows client - Linux oracle server SSO through Win2003 DC
Hi,
I'm trying to do SSO with the captioned setting, the outline can be simplified as below:
windows cleint --> Win2003 DC --> Linux Oracle server
Of course, the Linux server would issue kerberos ticket to the Windows client after which successfully authenticates with the Win2003 DC.
I have problem doing test connection for both Windows client & Linux server when connecting to the database. Both with error "ORA-12638: Credential retrieval failed" when testing with Oracle Net manager. Listener & DB were both started.
Platform: Redhat Enterprise ES4, Oracle 10.2.0
The configuration files are as follows:-
SQLNET.ORA
SQLNET.AUTHENTICATION_SERVICES= (BEQ, KERBEROS5)
SQLNET.KERBEROS5_KEYTAB = /u01/app/oracle/oracle/product/10.2.0/db_1/ORACLE.keytab
NAMES.DIRECTORY_PATH= (TNSNAMES)
SQLNET.KERBEROS5_CONF = /etc/krb5.conf
SQLNET.KERBEROS5_CONF_MIT = TRUE
NAMES.DEFAULT_DOMAIN = test.com
SQLNET.AUTHENTICATION_KERBEROS5_SERVICE = ORACLE
TRACE_LEVEL_SERVER=16
TRACE_DIRECTORY_SERVER=/u01/app/oracle/oracle/product/10.2.0/db_1/network/log/
TRACE_FILE_SERVER=server
TRACE_UNIQUE_SERVER=ON
LISTENER.ORA
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = orcl)
(ORACLE_HOME = /u01/app/oracle/oracle/product/10.2.0/db_1)
(GLOBAL_DBNAME = ORCL.TEST.COM)
# (PROGRAM = extproc)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = rhedlora)(PORT = 1521))
TNSNAMES.ORA
ORCL.TEST.COM =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = rhedlora)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl.test.com)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
Can anyone advise what's wrong? Thanks in advance.Sorry for miscommunication..
this is the actual listner information :
LSNRCTL> start
Starting tnslsnr: please wait...TNSLSNR for 32-bit Windows: Version 9.2.0.1.0 - Production
System parameter file is E:\oracle\ora92\network\admin\listener.ora
Log messages written to E:\oracle\ora92\network\log\listener.log
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ECT-STPPC2316.BLR.INDIA.
CGINET)(PORT=1521)))Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
STATUS of the LISTENER
Alias LISTENER
Version TNSLSNR for 32-bit Windows: Version 9.2.0.1.0 - Produc
tion
Start Date 20-DEC-2007 13:32:16
Uptime 0 days 0 hr. 0 min. 0 sec
Trace Level off
Security OFF
SNMP OFF
Listener Parameter File E:\oracle\ora92\network\admin\listener.ora
Listener Log File E:\oracle\ora92\network\log\listener.log
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ECT-STPPC2316.BLR.INDIA.CGINET)(PORT
=1521)))
Services Summary...
Service "PLSExtProc" has 1 instance(s).
Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully
=============
I am using different listner(Listner).
Please let me know if I have to make any configuration at Client Machine. -
Hi
I am using Ora10gR1 and SUSE Linux Enterprise Server 9. I am getting the following message in /var/log/messages
Aug 27 09:48:41 (none) logger: Oracle Cluster Ready Services disabled by corrupt install
Aug 27 09:48:41 (none) logger: Could not access /etc/oracle/scls_scr/ohare/root/crsstart.
I did not install CRS. Can you help?
ThxHi,
These don't have any affect on your database. If you want to disable these messages then comment following line in the inittab file
#h1:35:respawn:/etc/init.d/init.cssd run >/dev/null 2>&1 </dev/null
regards -
Windows主机访问虚拟机linux中的oracle实例的安装方法
在学习oracle时一般都会在windows中安装虚拟机,在虚拟机安装linux系统并[安装oracle.
下面是自己的在windows中安装虚拟机并让windows主机能访问虚拟机中oracle实例的安装方法写的不好请大家多多包涵.
一.准备安装所需要的软件:
1.VMware虚拟机的下载和安装在我的博客中已经提到,这里就不再详细阐述。
2.先推荐一个redhat的下载地址,RedHat Linux 5企业版:content.gougou.com/content,
这个比较全面,但是也比较大(2.68G),如果自己有合适的linux安装版本,可以不使用这个。
二.在VMware虚拟机为RedHat Linux创建新的虚拟机就不详述了
三.在新建的虚拟机里安装RedHat Linux就不详述了
四.在linux系统中安装oracle
为了创建一个新的oracle用户输入和以下相似的命令:
# /usr/sbin/useradd -g oinstall -G dba[,oper] oracle
给oralce用户设置密码
# passwd oracle
修改内核参数编辑/etc/sysctl.conf文件
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 262144
net.core.rmem_max = 262144
net.core.wmem_default = 262144
net.core.wmem_max = 262144
当在/etc/sysctl.conf文件中指定这些内核参数后你要重启系统
也可以执行以下命令让内核参数生效
/sbin/sysctl -p
给oracle用户设置shell限制
为了提高数据库软件在linux系统中的性能你必须给oracle用户增加以下shell限制:
shell limit item in limits.confg hard limit
能打开文件的最大数量 nofile 65536
单个用户可用的最大进程数 nproc 16384
在/etc/security/limits.conf文件中增加以下限制:
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
在/ect/pam.d/login文件如果下面显示的参数没有就增加到该文件中
session required pam_limits.so
根据oracle用户的默认shell,对默认的shell启动文件进行以下更改:
对于Bourne, Bash, or Korn shell在/etc/profile文件中增加下面的代码
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
对C shell(csh or tcsh)在/etc/csh.login文件中增加以下代码
if ( $USER == "oracle" ) then
limit maxproc 16384
limit descriptors 65536
endif
创建oracle根目录可以输入以下相似的命令:
# mkdir -p /mount_point/app/oracle_sw_owner
# chown -R oracle:oinstall /mount_point/app/oracle_sw_owner
# chmod -R 775 /mount_point/app/oracle_sw_owner
如果oracle根目录的加载点是/u01并且oracle软件使用者用户为oracle那么oracle根目录的路径为:
/u01/app/oracle
[root@weblogic28 ~]# mkdir -p /u01/app/oracle
[root@weblogic28 ~]# chown -R oracle:oinstall /u01/app/oracle
[root@weblogic28 ~]# chmod -R 775 /u01/app/oracle
当你配置oracle用户环境变量时设置ORACLE_BASE时就将oracle根目录的路径赋给ORACLE_BASE
创建存储数据库文件和数据库恢复文件的目录
创建存储数据库文件的目录的命令如下:
# mkdir /mount_point/oradata
# chown oracle:oinstall /mount_point/oradata
# chmod 775 /mount_point/oradata
将存放数据库文件的目录创建在oracle根目录下/u01/app/oracle/oradata
[root@weblogic28 ~]# mkdir /u01/app/oracle/oradata
[root@weblogic28 ~]# chown oracle:oinstall /u01/app/oracle/oradata
[root@weblogic28 ~]# chmod 775 /u01/app/oracle/oradata
创建oracle Home目录/u01/app/oracle/10.2.0/db
[root@weblogic28 ~]# mkdir /u01/app/oracle/10.2.0/db
[root@weblogic28 ~]# chown oracle:oinstall /u01/app/oracle/10.2.0/db
[root@weblogic28 ~]# chmod 775 /u01/app/oracle/10.2.0/db
创建存储数据库恢复文件的目录的命令如下:
# mkdir /mount_point/flash_recovery_area
# chown oracle:oinstall /mount_point/flash_recovery_area
# chmod 775 /mount_point/flash_recovery_area
将存放数据库恢复文件的目录创建在oracle根目录下/u01/app/oracle
[root@weblogic28 ~]# mkdir /u01/app/oracle/flash_recovery_area
[root@weblogic28 ~]# chown oracle:oinstall /u01/app/oracle/flash_recovery_area
[root@weblogic28 ~]# chmod 775 /u01/app/oracle/flash_recovery_area
创建一个/tmp目录
[root@weblogic28 ~]# mkdir /u01/tmp
[root@weblogic28 ~]# chmod a+wr /u01/tmp
切换到oracle用户来设置环境变量
[oracle@weblogic28 ~]$
ls -a
查看.bash_profile文件
vi .bash_profile
TEMP=/u01/tmp
TMPDIR=/u01/tmp
export TEMP TMPDIR
export LD_ASSUME_KERNEL=2.6.9
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/10.2.0/db
export ORACLE_SID=jycs
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
export LD_LIBRARY_PATH
export PATH=$PATH:$ORACLE_HOME/bin
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
CLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlib
export CLASSPATH
[oracle@weblogic28 tmp]$# umask
0022
umask命令将会显示22,022或0022
[oracle@weblogic28 tmp]$# env | more
REMOTEHOST=10.138.135.242
HOSTNAME=weblogic28
SHELL=/bin/bash
TERM=ansi
HISTSIZE=1000
TMPDIR=/u01/tmp
KDE_NO_IPV6=1
QTDIR=/usr/lib64/qt-3.3
QTINC=/usr/lib64/qt-3.3/include
USER=root
TEMP=/u01/tmp
LS_COLORS=no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:bd=40;33;01:cd=40;33;0
1:or=01;05;37;41:mi=01;05;37;41:ex=01;32:*.cmd=01;32:*.exe=01;32:*.com=01;32:*.b
tm=01;32:*.bat=01;32:*.sh=01;32:*.csh=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:
*.taz=01;31:*.lzh=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.gz=01;31:*.bz2=01;31:*
.bz=01;31:*.tz=01;31:*.rpm=01;31:*.cpio=01;31:*.jpg=01;35:*.gif=01;35:*.bmp=01;3
5:*.xbm=01;35:*.xpm=01;35:*.png=01;35:*.tif=01;35:
ORACLE_SID=jycs
ORACLE_BASE=/u01/app/oracle
KDEDIR=/usr
MAIL=/var/spool/mail/root
PATH=/usr/lib64/qt-3.3/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:
/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
INPUTRC=/etc/inputrc
上面显示了你所设置的环境变量
也可以用下面的命令来查看环境变量
[oracle@weblogic28 tmp]$ echo $ORACLE_HOME[$ORACLE_SID,$ORACLE_BASE]
将数据库软件包拷贝到linux系统中
然后解压文件
$ gunzip filename.cpio.gz
[oracle@weblogic28 tmp]$ gunzip 10201_database_linux_x86_64.cpio.gz
执行上面的命令后会出现在 10201_database_linux_x86_64.cpio文件包
再执行如下命令解压文件
$ cpio -idmv < filename.cpio
[oracle@weblogic28 tmp]$ cpio -idmv <10201_database_linux_x86_64.cpio
database/stage/prereq/db/refhost_Custom.xml
database/stage/prereq/db/refhost.xml
database/stage/prereq/db/db_prereq.xml
database/stage/prereq/db/dbprereq.jar
database/stage/prereq/db
database/stage/prereq/oui/knowledgesrc.xml
database/stage/prereq/oui/rulemap.xml
database/stage/prereq/oui/OraPrereqChecks.jar
database/stage/prereq/oui
database/stage/prereq/common/rulemap.xml
database/stage/prereq/common
会出现以上信息
如果是远程安装可以使用VNC远程连接到linux服务器上来执行界面安装
1、配置并开启vnc服务
[oracle@localhost ~]$ vncserver
You will require a password to access your desktops.
Password: ---这里要求输入vnc客户端登录的密码并重复
Verify:
New 'localhost.localdomain:2 (oracle)' desktop is localhost.localdomain:2
Creating default startup script. /home/oracle/.vnc/xstartup
Starting applications specified in /home/oracle/.vnc/xstartup
Log file is /home/oracle/.vnc/localhost.localdomain:2.log
----如上告诉你vnc终端已经创建好,用的是第二个终端
2、在创建vnc服务的用户目录下会生成一个.vnc的隐藏目录
[oracle@localhost ~]$ ls -a
. .bash_profile Disk1 .gconfd .gstreamer-0.10 .metacity README.htm .viminfo
.. .bashrc .eggcups .gnome .gtkrc-1.2-gnome2 .mozilla .redhat .vnc
.bash_history .chewing .emacs .gnome2 .ICEauthority .nautilus .scim .Xauthority
.bash_logout Desktop .gconf .gnome2_private .kde p8202632_10205_Linux-x86-64.zip .Trash .zshrc
3、进入.vnc目录,找到xstartup可执行文件,用vi 编辑器打开
[oracle@localhost ~]$ cd .vnc/
[oracle@localhost .vnc]$ ls
localhost.localdomain:2.log localhost.localdomain:2.pid passwd xstartup
[oracle@localhost .vnc]$ vi xstartup
#!/bin/sh
# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
exec /etc/X11/xinit/xinitrc ---去掉前面的#号即可 --保存退出
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
twm &
~
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
"xstartup" 12L, 333C 已写入
[oracle@localhost .vnc]$ vncserver
New 'localhost.localdomain:3 (oracle)' desktop is localhost.localdomain:3
Starting applications specified in /home/oracle/.vnc/xstartup
Log file is /home/oracle/.vnc/localhost.localdomain:3.log
4、清除刚才创建的vnc虚拟终端
[oracle@localhost .vnc]$ vncserver -kill :1
Can't find file /home/oracle/.vnc/localhost.localdomain:1.pid
You'll have to kill the Xvnc process manually
[oracle@localhost .vnc]$ vncserver -kill :2
Killing Xvnc process ID 11889
[oracle@localhost .vnc]$ vncserver -kill :3
Killing Xvnc process ID 11945
[oracle@localhost .vnc]$ vncserver -kill :4
Can't find file /home/oracle/.vnc/localhost.localdomain:4.pid
You'll have to kill the Xvnc process manually
5、重新建立新的vnc虚拟终端
[oracle@localhost .vnc]$ vncserver
New 'localhost.localdomain:2 (oracle)' desktop is localhost.localdomain:2
Starting applications specified in /home/oracle/.vnc/xstartup
Log file is /home/oracle/.vnc/localhost.localdomain:2.log --该终端号为 :2
6、在windows客户端用RealVNC软件中的Run VNC Viewer客户端连接。
7、在Run VNC Viewer 只需输入linux服务器的地址和刚才生成的终端号:2
格式:192.168.1.56:2
8、输入刚才配置vnc服务的时候配的即可登录linux服务器图形界面。
如果是本地安装的话执行下面的步骤
用root用户登录
[root@weblogic28 ~]#xhost + 让任何用户都是启用图形界面
切换到oracle用户
[root@weblogic28 ~]su - oracle
[oracle@localhost ~]$ cd /database
[oracle@weblogic28 database]$./runInstaller
设置虚拟机的IP地址让主机可以访问虚拟机
1、 NAT方式
1.1 右键单击主机任务栏上的网络连接图标,选择打开网络连接页面
1.2 启动”VMware Network Adapter VMnet8” 和 “VMware Network Adapter VMnet1”这两个连接
1.3 右键单击“本地连接”,选择属性,打开”本地连接属性”对话框,选择”高级”标签,打开高级标签页面,选中选项”允许其它网络用户通过此计算机的internet连接来连接”,然后在”家庭网络连接”下拉列表中选择VMware Network Adapter VMnet8。
1.4 在虚拟机上右键单击你要设置的虚拟机选“setting”(因为有的不止虚拟一台),打开”Hardware”标签页,单击”device”下的ethernet,此时在右边选中NAT:Used to share the host’s IP address. 然后点击确定。
1.5 打开虚拟机上的Edit菜单,选择virtual network settings打开virtual network editor页面,先打开automatic bridging标签页,关闭automagic bridging,点击应用;再打开DHCP标签页,启动DHCP服务,然后点击应用;最后打开NAT标签页,启动NAT服务,然后点击应用;点击确定后退出
1.9 启动虚拟机中的系统。
1.10 设置虚拟机中的系统的IP地址为192.168.100.200,默认网关为192.168.100.1 (VMware Network Adapter VMnet8的IP地址),DNS服务器设置和主机中的DNS服务器一致。
1.11 重新加载网络参数或者重新启动虚拟机中的系统。
1.12设置静态IP地址.
(1).命令行设置(该方式只是临时设置,系统重启后失效)
[1].设置IP和掩码
ifconfig 接口名(如eth0) IP地址 netmask 子网掩码
[2].设置网关
route add default gw 默认网关
[3].设置DNS服务器地址
echo "nameserver DNS服务器地址">/etc/resolv.conf
实例:假设设置eth0的IP:192.168.1.100,DNS:192.168.1.12
ifconfig eth0 192.168.100.200 netmask 255.255.255.0
route add default gw 192.168.100.1
echo "nameserver=192.168.1.12">/etc/resolv.conf
(2).修改文件来实现配置网络(需要重启网络接口重启后IP不会改变)
[1].修改IP地址,文件:/etc/sysconfig/network-scripts/ifcfg-接口名
这里假设网络接口名为eth0.
vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 (注:这里填的是网络接口名)
BOOTPROTO=static
ONBOOT=yes (注:是否随系统启动)
IPADDR=192.168.100.200(注:这里填写的是IP地址)
PREFIX=24 (注:这里填写的是掩码的长度)
NETMASK=255.255.255.0
GATEWAY=192.168.100.1( 注:这里写的是网关)就是VMware Network Adapter VMnet8的IP地址
[2].修改DNS
echo "nameserver DNS服务器地址">/etc/resolv.conf
[3].重启网络接口(假设为eth0)
ifup eth0(注:这里写的是接口名)
关闭linux防火墙
(1) 重启后永久性生效:
开启:chkconfig iptables on
关闭:chkconfig iptables off
(2) 即时生效,重启后失效:
开启:service iptables start
关闭:service iptables stop
linux下Oracle自动启动与停止
1.修改Oracle系统配置文件/etc/oratab
/etc/oratab 格式为: SID:ORACLE_HOME:AUTO
把AUTO域设置为Y(大写),只有这样,oracle 自带的dbstart和dbshut才能够发挥作用。我的为:
$ORACLE_SID:$ORACLE_HOME:Y
这儿的ORACLE_SID和ORACLE_HOME是oracle用户下的环境变量,在不同的电脑上有不同的值.当你打开/etc/oratab的时候,修改一下就行了.
2.编写服务脚本
在/etc/rc.d/init.d目录下创建oracle文件作为启动脚本,内容如下:容如下:
#!/bin/sh
#chkconfig: 2345
#description:oracle_orcl
# /etc/rc.d/init.d/oracle_orcl
# auto start database orcl instance
#set oracle env
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/oracle/product/10.2.0/db_1
export PATH=$PATH:$ORACLE_HOME/bin
export ORACLE_SID=orcl
ORACLE_USER=oracle
#start or stop script
case $1 in
start)
su - "$ORACLE_USER"<<EOO
lsnrctl start LISTENER
sqlplus /nolog<<EOS
connect /as sysdba
startup
EOS
EOO
stop)
su - "$ORACLE_USER"<<EOO
lsnrctl stop LISTENER
sqlplus /nolog<<EOS
connect /as sysdba
shutdown immediate
EOS
EOO
echo "Usage: $0 {start|stop}"
esac
在oracle用户下输入如上的内容,然后保存退出,由于是启动脚本,需要执行权限;执行命令chmod a+x oracle授予oracle执行权限.
3.建立服务连接
ln -s /etc/rc.d/init.d/oracle /etc/rc.d/rc2.d/S99oracle
ln -s /etc/rc.d/init.d/oracle /etc/rc.d/rc3.d/S99oracle
ln -s /etc/rc.d/init.d/oracle /etc/rc.d/rc5.d/S99oracle
ln -s /etc/rc.d/init.d/oracle /etc/rc.d/rc0.d/K01oracle
ln -s /etc/rc.d/init.d/oracle /etc/rc.d/rc6.d/K01oracle
或可以通过执行以下命令来实现
chkconfig --add oracle
chkconfig命令运行成功后,在rc2.d,rc3.d,rc4.d,rc5.d下面建立了S99oracle 连接文件,可以在系统启动的时候,运行脚本启动数据库。在rc0.d、rc1.d和rc6.d目录下面建立了K99oracle文件,用于在系统关闭的时候自动运行脚本关闭数据库。可以使用 chkconfig --list oracle 命令查看服务配置,关于chkconfig更多的用法,可以通过man chkconfig查看
4.测试
启动,运行命令:./oracle_linuxdb start
关闭,执行命令:./oracle_linuxdb stop
可以用sqlplus user/passward@tnsname来测试启动和关闭数据库是否成功。现在重新启动linux主机,看数据库是否自动启动了.
这样主机就能访问虚拟机中的oracle数据库了其实运用Oracle Virtual Box + OEL会使安装数据库变得更加简便。
-
Oracle BI Presentation Services problem - Message without protocol negotiat
Hello,
I have installed all the BI EE components on a single RH linux machine, I'm able to start ORACLE BI presentation service and Java host services after the startup the log file (sawlog0.log) says
Oracle BI Presentation Services 10.1.3.4 (Build 080726.1900) are starting up.
Type: Information
Severity: 30
Time: Thu Feb 26 18:42:56 2009
File: project/sawserver/sawserver.cpp Line: 459
Properties: ThreadID-3086547168
Location:
saw.sawserver
Oracle BI Presentation Services have started successfully.
BUT when I hit the URL [http://]<local host name>:9710/analytics/saw.dll?Dashboard
The browser is blank and the log file throw error message as following
Type: Error
Severity: 40
Time: Thu Feb 26 18:45:12 2009
File: project/webcomm/rpcserver.cpp Line: 744
Properties: ThreadID-41417616
Location: saw.rpc.server
saw.rpc.server.handleConnection
saw.rpc.server.dispatch
saw.threadPool
saw.threads
Message without protocol negotiation
Type: Warning
Severity: 40
Time: Thu Feb 26 18:45:12 2009
File: project/webcomm/socketrpcserver.cpp Line: 491
Properties: ThreadID-41417616
Location:
saw.rpc.server.handleConnection
saw.rpc.server.dispatch
saw.threadPool
saw.threads
Bad request. Closing connection.
Please note that Java host service is up & running with following message
Feb 26, 2009 6:42:59 PM Main main
INFO: Listening for new connections
Can someone help me on what I'm missing?Did you check the Enterprise Manager to see wheter the application was correctly deployed and is up and running?
http://ofdsys.us.oracle.com:9704/em
Go Applications -> "analytics" (already here you can check the status) -> Module "analytics" -> "Test Web Module"
Maybe you are looking for
-
Link between storage location and batch number to retrive the salk3 field
HI, In my report i need to give the output as follows For each lgort with related batch number we need to get the salk3.So i need to get a link between lgort , batch number to retrive the salk3.can any one give the tables from which i can get the lin
-
I have installed photoshop cs6 on my computer (Windows 7) but the programm is a bit useless since it can't create or open files. I tryed reinstalling all my adobe programms 3 times but photoshop still won't work. Do you have an idea how I can make th
-
Not rendering before making iDVD project
OK, by reading the post, it appears that the culprit for bad photo quality when making a photo slideshow in iMovie then going to iDVD is the iMovie render process. So, when I hit the iDVD button is it OK to not render and make go right to iDVD?
-
I am looking at upgrading from a Canon Rebel
I have a Canon Rebel that I purchased a few years back and I am considering upgrading. My hobby is taking wildlife pictures but I am by no means close to being an advanced photographer so I do not need top of the line equipment. Any suggestions are g
-
The screen where my apps show on all the pages is not letting me drag them. The screen looks kind of gray. What do I do to be able to move them to different home screens, and check, and uncheck the apps in the list