<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Archives des WebLogic - dbi Blog</title>
	<atom:link href="https://www.dbi-services.com/blog/category/application-integration-middleware/weblogic/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.dbi-services.com/blog/category/application-integration-middleware/weblogic/</link>
	<description></description>
	<lastBuildDate>Mon, 01 Jun 2026 13:52:53 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2025/05/cropped-favicon_512x512px-min-32x32.png</url>
	<title>Archives des WebLogic - dbi Blog</title>
	<link>https://www.dbi-services.com/blog/category/application-integration-middleware/weblogic/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Oracle Forms &#038; Reports 14.1.2 Patching Issue</title>
		<link>https://www.dbi-services.com/blog/oracle-forms-reports-14-1-2-patching-issue/</link>
					<comments>https://www.dbi-services.com/blog/oracle-forms-reports-14-1-2-patching-issue/#respond</comments>
		
		<dc:creator><![CDATA[David Diab]]></dc:creator>
		<pubDate>Mon, 01 Jun 2026 13:52:51 +0000</pubDate>
				<category><![CDATA[Application integration & Middleware]]></category>
		<category><![CDATA[WebLogic]]></category>
		<category><![CDATA[Forms and Reports server]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[patch]]></category>
		<guid isPermaLink="false">https://www.dbi-services.com/blog/?p=43677</guid>

					<description><![CDATA[<p>During a recent maintenance activity, I patched an Oracle Forms &#38; Reports 14.1.2 environment on Linux. The patching itself completed successfully, but immediately after the restart, Oracle Reports started failing. At first, the issue looked like a Java or JDK problem. After a full investigation, it turned out to be different. This blog explains the [&#8230;]</p>
<p>L’article <a href="https://www.dbi-services.com/blog/oracle-forms-reports-14-1-2-patching-issue/">Oracle Forms &amp; Reports 14.1.2 Patching Issue</a> est apparu en premier sur <a href="https://www.dbi-services.com/blog">dbi Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>During a recent maintenance activity, I patched an <strong>Oracle Forms &amp; Reports 14.1.2</strong> environment on Linux. The patching itself completed successfully, but immediately after the restart, Oracle Reports started failing.</p>



<p>At first, the issue looked like a Java or JDK problem. After a full investigation, it turned out to be different.</p>



<p>This blog explains the full story from beginning to end.</p>



<span id="more-43677"></span>



<figure class="wp-block-image size-large"><img fetchpriority="high" decoding="async" width="1024" height="683" src="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2026/03/ChatGPT-Image-Mar-30-2026-05_14_18-PM-1024x683.png" alt="" class="wp-image-43684" srcset="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2026/03/ChatGPT-Image-Mar-30-2026-05_14_18-PM-1024x683.png 1024w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2026/03/ChatGPT-Image-Mar-30-2026-05_14_18-PM-300x200.png 300w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2026/03/ChatGPT-Image-Mar-30-2026-05_14_18-PM-768x512.png 768w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2026/03/ChatGPT-Image-Mar-30-2026-05_14_18-PM.png 1536w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<h2 class="wp-block-heading" id="h-introduction">Introduction</h2>



<p><strong><span style="text-decoration: underline">Initial Objective</span></strong></p>



<p>The initial goal was simple:</p>



<ul class="wp-block-list">
<li>apply the latest Oracle Fusion Middleware patch bundle</li>



<li>restart the environment</li>



<li>validate Forms and Reports services</li>
</ul>



<p>The patch installation completed without any obvious errors, and patch inventory looked clean.</p>



<p><strong><span style="text-decoration: underline">Issue after patching</span></strong></p>



<p>Once the environment was started again, Oracle Reports was no longer stable.</p>



<p>Symptoms:</p>



<ul class="wp-block-list">
<li>Reports engine failed to start correctly</li>



<li>Report execution was failing</li>



<li>Oracle Reports processes were crashing shortly after startup</li>



<li>The environment became unstable after patching</li>
</ul>



<p>This immediately confirmed that the issue was introduced after the Oracle patching activity.</p>



<h2 class="wp-block-heading" id="h-investigation">Investigation</h2>



<p>The first checks focused on the usual areas:</p>



<ul class="wp-block-list">
<li>WebLogic status</li>



<li>Reports server startup</li>



<li>Reports engine diagnostic logs</li>



<li>process status</li>



<li>environment variables</li>



<li>classpath and Java configuration</li>
</ul>



<p>At this stage, the failure appeared during Reports engine initialization.</p>



<p><strong><span style="text-decoration: underline">Crash Analysis</span></strong></p>



<p>A deeper review showed <strong>JVM crash files</strong> (<code>hs_err_pid</code>) being generated.</p>



<p>The important finding was that the crash was not pointing to standard Java code.<br>It was occurring in the Oracle Reports native library:</p>



<ul class="wp-block-list">
<li><code><em>librw.so</em></code></li>



<li>function around <code><em>kguinit</em></code></li>
</ul>



<p>This was an important clue because it suggested the problem was not a normal Java exception, but a failure in Oracle Reports native components.</p>



<p><strong><span style="text-decoration: underline">JDK Validation</span></strong></p>



<p>Because the issue started after patching, one possible explanation was a JDK problem.</p>



<p>Several validations were performed:</p>



<ul class="wp-block-list">
<li>Checked active Java paths</li>



<li>Rolled back JDK version</li>



<li>Retested with the previous JDK</li>



<li>Compared behavior before and after JDK rollback</li>
</ul>



<p>The same crash still happened even after JDK rollback.</p>



<p>That confirmed the issue was <strong>not caused by the JDK itself</strong>.</p>



<p><strong><span style="text-decoration: underline">Rollback and Reproduction Test</span></strong></p>



<p>To make sure the Oracle patch was really the trigger, I performed a controlled validation:</p>



<ul class="wp-block-list">
<li>Roll back Oracle patch</li>



<li>Start environment</li>



<li>Test Reports</li>



<li>Reapply Oracle patch</li>



<li>Retest Reports</li>
</ul>



<p><span style="text-decoration: underline">Before patch</span>: environment worked fine</p>



<p><span style="text-decoration: underline">After patch</span>: issue was reproduced again.</p>



<p>This confirmed that the problem was patch-related and reproducible.</p>



<p><strong><span style="text-decoration: underline">Real Root Cause Direction</span></strong></p>



<p>After further analysis, it became clear that the problem was not just a startup configuration issue.</p>



<p>The patch had left the Oracle Reports native layer in an inconsistent state, and the environment needed a <strong>relink</strong> of Oracle FMW Reports and related shared libraries. I already had the case in the past with older versions (11 and 12), which normally has been solved since (<a href="https://support.oracle.com/ic/builder/rt/customer_portal/live/webApps/customer-portal/?anchorId=&amp;documentId=KB104706&amp;page=sptemplate&amp;sptemplate=km-article" target="_blank" rel="noreferrer noopener">related Oracle KB</a>)!</p>



<p>That explained why:</p>



<ul class="wp-block-list">
<li>Patching succeeded</li>



<li>Startup partially worked</li>



<li>But Reports engine crashed in native code</li>
</ul>



<h2 class="wp-block-heading" id="h-final-resolution">Final Resolution</h2>



<p>The final resolution was to relink Oracle FMW Reports.</p>



<p>First, the Reports environment was loaded:</p>



<pre class="wp-block-code"><code>cd $DOMAIN_HOME/reports/bin
. ./reports.sh</code></pre>



<p>Then the Oracle Reports libraries and binaries were rebuilt:</p>



<pre class="wp-block-code"><code>cd $ORACLE_HOME/reports/lib
make -f ins_reports.mk install</code></pre>



<p>This recreated and relinked key Reports components such as:</p>



<ul class="wp-block-list">
<li><code>librw.so</code></li>



<li><code>librwu.so</code></li>



<li><code>rwserver</code></li>



<li><code>rwrun</code></li>



<li><code>rwclient</code></li>



<li><code>rwbuilder</code></li>



<li><code>rwconverter</code></li>



<li><code>rwcgi</code></li>



<li><code>rwproxy</code></li>



<li><code>rwrqv</code></li>
</ul>



<p>After that, the Oracle client shared libraries were rebuilt as well:</p>



<pre class="wp-block-code"><code>cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk client_sharedlib</code></pre>



<p>This regenerated the Oracle client shared libraries and symbolic links required by the middleware binaries.</p>



<p>After the relink activity:</p>



<ul class="wp-block-list">
<li>Oracle Reports started correctly</li>



<li>the engine no longer crashed</li>



<li>report execution worked again</li>



<li>the patched environment became stable</li>
</ul>



<p>So the environment could remain patched and operational, without needing to stay rolled back.</p>



<h2 class="wp-block-heading" id="h-lessons-learned-and-key-takeaway">Lessons Learned and key takeaway</h2>



<p>This case was a good reminder that post-patching issues are not always caused by:</p>



<ul class="wp-block-list">
<li>Java</li>



<li>Classpath</li>



<li>Managed server configuration</li>



<li>OS changes</li>
</ul>



<p>Sometimes the real issue is lower-level and sits in:</p>



<ul class="wp-block-list">
<li>Oracle native binaries</li>



<li>Shared libraries</li>



<li>Incomplete or inconsistent linking after patching</li>
</ul>



<p>So, please note that when Oracle Reports crashes inside <code>librw.so</code> after patching, and rollback proves the patch introduced the issue, a <strong>relink of Reports and Oracle client shared libraries</strong> should be considered as a serious corrective action.</p>



<p><a href="https://www.dbi-services.com/blog/" target="_blank" rel="noreferrer noopener">Read more blogs</a></p>



<p></p>
<p>L’article <a href="https://www.dbi-services.com/blog/oracle-forms-reports-14-1-2-patching-issue/">Oracle Forms &amp; Reports 14.1.2 Patching Issue</a> est apparu en premier sur <a href="https://www.dbi-services.com/blog">dbi Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.dbi-services.com/blog/oracle-forms-reports-14-1-2-patching-issue/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>WebLogic 14 &#038; Elastic Stack: From Metrics to Predictive Insights</title>
		<link>https://www.dbi-services.com/blog/weblogic-14-elastic-stack-from-metrics-to-predictive-insights/</link>
					<comments>https://www.dbi-services.com/blog/weblogic-14-elastic-stack-from-metrics-to-predictive-insights/#respond</comments>
		
		<dc:creator><![CDATA[David Diab]]></dc:creator>
		<pubDate>Fri, 20 Feb 2026 09:21:39 +0000</pubDate>
				<category><![CDATA[Elastic Stack]]></category>
		<category><![CDATA[WebLogic]]></category>
		<category><![CDATA[elastic Stack]]></category>
		<category><![CDATA[Monitoring]]></category>
		<guid isPermaLink="false">https://www.dbi-services.com/blog/?p=40353</guid>

					<description><![CDATA[<p>Oracle WebLogic Server continues to be a backbone for enterprise Java applications. With version 14, it brings improved Java compatibility, stronger security defaults, and better clustering. But while the platform is robust, monitoring it effectively remains a challenge. Introduction Within WebLogic 14, out-of-the-box tools such as the Remote Console and WLST scripts provide some visibility, [&#8230;]</p>
<p>L’article <a href="https://www.dbi-services.com/blog/weblogic-14-elastic-stack-from-metrics-to-predictive-insights/">WebLogic 14 &amp; Elastic Stack: From Metrics to Predictive Insights</a> est apparu en premier sur <a href="https://www.dbi-services.com/blog">dbi Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Oracle WebLogic Server continues to be a backbone for enterprise Java applications. With version 14, it brings improved Java compatibility, stronger security defaults, and better clustering. But while the platform is robust, monitoring it effectively remains a challenge.</p>



<span id="more-40353"></span>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="683" src="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2025/09/Blog-WLS14-Elastic-Stack1-1024x683.png" alt="" class="wp-image-40561" srcset="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2025/09/Blog-WLS14-Elastic-Stack1-1024x683.png 1024w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2025/09/Blog-WLS14-Elastic-Stack1-300x200.png 300w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2025/09/Blog-WLS14-Elastic-Stack1-768x512.png 768w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2025/09/Blog-WLS14-Elastic-Stack1.png 1536w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<h2 class="wp-block-heading" id="h-introduction">Introduction</h2>



<p>Within WebLogic 14, out-of-the-box tools such as the Remote Console and WLST scripts provide some visibility, but they are limited when it comes to real-time metrics, historical analysis, or predictive monitoring.</p>



<p>This is where the <a href="https://www.elastic.co/">Elastic</a> Stack (Elasticsearch, Logstash, Beats, Elastic Agent, Kibana, and Elastic Machine Learning) delivers real value. By integrating WebLogic 14 logs, traces and metrics with Elastic Stack, you can build a unified platform that provides:</p>



<ul class="wp-block-list">
<li>Real-time observability of servers, threads, JDBC pools, and JVM health.</li>



<li>Powerful visualization and analysis in Kibana.</li>



<li>Predictive monitoring through anomaly detection and forecasting.</li>
</ul>



<p>In this blog, we’ll walk through the integration of metrics step by step.</p>



<h2 class="wp-block-heading" id="h-step-1-export-weblogic-14-metrics">Step 1: Export WebLogic 14 Metrics</h2>



<p>WebLogic does not natively expose metrics in formats suitable for Elastic or Prometheus. The solution is the WebLogic Monitoring Exporter, which translates JMX metrics into Prometheus-style output.</p>



<p>Download the exporter:</p>



<pre class="wp-block-code"><code>wget https://github.com/oracle/weblogic-monitoring-exporter/releases/download/v2.3.0/weblogic-monitoring-exporter.jar
</code></pre>



<p>Configure it (<code>config.yaml</code>):</p>



<pre class="wp-block-code"><code>domains:
  - name: mydomain
    url: t3://localhost:7001
    username: monitoruser
    password: XXXXXXXXXX
    metrics:
      - name: ServerHealth
      - name: ThreadPool
      - name: JDBCConnectionPool
      - name: JVMRuntime</code></pre>



<p>Start the exporter:</p>



<pre class="wp-block-code"><code>java -jar weblogic-monitoring-exporter.jar --config=config.yaml</code></pre>



<p>Verify metrics are exposed at:</p>



<pre class="wp-block-code"><code>http:&#047;&#047;localhost:8080/metrics</code></pre>



<h2 class="wp-block-heading" id="h-step-2-collect-metrics-with-metricbeat">Step 2: Collect Metrics with Metricbeat</h2>



<p>Elastic provides Metricbeat with a Prometheus module, making it easy to scrape WebLogic exporter metrics and send them to Elasticsearch.</p>



<p>Enable and configure the module:</p>



<pre class="wp-block-code"><code>metricbeat modules enable prometheus</code></pre>



<p>prometheus.yml configuration:</p>



<pre class="wp-block-code"><code>- module: prometheus
  period: 10s
  hosts: &#091;"http://localhost:8080"]
  metrics_path: /metrics</code></pre>



<p>Start Metricbeat:</p>



<pre class="wp-block-code"><code>sudo metricbeat setup
sudo service metricbeat start</code></pre>



<p>Now WebLogic metrics are flowing into Elasticsearch.</p>



<h2 class="wp-block-heading" id="h-step-3-collect-weblogic-logs-with-filebeat-or-elastic-agent">Step 3: Collect WebLogic Logs with Filebeat or Elastic Agent</h2>



<p>Metrics give you system health, but logs provide context. To correlate performance issues with application errors, you should ingest WebLogic logs into Elasticsearch.</p>



<h3 class="wp-block-heading">Option A: Using Filebeat</h3>



<p>Install and configure Filebeat on the WebLogic server.</p>



<p>Example configuration (<code>filebeat.yml</code>):</p>



<pre class="wp-block-code"><code>filebeat.inputs:
  - type: log
    enabled: true
    paths:
      - /u02/app/weblogic/domains/mydomain/servers/*/logs/*.log
    fields:
      application: weblogic
    multiline.pattern: '^\&lt;'
    multiline.negate: true
    multiline.match: after

output.elasticsearch:
  hosts: &#091;"http://localhost:9200"]

And start Filebeat.</code></pre>



<h3 class="wp-block-heading" id="h-option-b-using-elastic-agent-recommended">Option B: Using Elastic Agent (Recommended)</h3>



<p>Elastic Agent simplifies deployment by combining logs, metrics, and security data collection into a single agent managed centrally via Kibana Fleet.</p>



<p>Steps:</p>



<ol class="wp-block-list">
<li>Enroll the agent from Kibana &#8211; Fleet.</li>



<li>Attach the System + Custom Log integration.</li>



<li>Configure the WebLogic log path.</li>



<li>Deploy the agent on your WebLogic server.</li>
</ol>



<p>This approach reduces operational overhead and centralizes configuration.</p>



<h1 class="wp-block-heading" id="h-next-steps-amp-conclusion">Next steps &amp; Conclusion</h1>



<p>Next steps:</p>



<ul class="wp-block-list">
<li>Build Observability Dashboards in Kibana</li>



<li>Add APM for Transaction-Level Visibility</li>



<li>Enable Machine Learning for Predictive Monitoring</li>



<li>Configure Alerts</li>
</ul>



<p>While WebLogic 14 provides essential administrative tooling, it does not offer full observability capabilities out of the box.</p>



<p>By integrating it with the Elastic Stack, you gain:</p>



<ul class="wp-block-list">
<li>Real-time operational insight</li>



<li>Deep log and metric correlation</li>



<li>Predictive monitoring with machine learning</li>



<li>Actionable alerting</li>



<li>Transaction-level visibility</li>
</ul>



<p>This approach scales from a single WebLogic instance to enterprise clusters and hybrid cloud deployments.</p>



<p>In short: you move from reactive troubleshooting to proactive performance management.</p>



<p><a href="https://www.dbi-services.com/blog/category/elastic-stack/" target="_blank" rel="noreferrer noopener">See my Elastic blogs</a>.</p>



<p></p>
<p>L’article <a href="https://www.dbi-services.com/blog/weblogic-14-elastic-stack-from-metrics-to-predictive-insights/">WebLogic 14 &amp; Elastic Stack: From Metrics to Predictive Insights</a> est apparu en premier sur <a href="https://www.dbi-services.com/blog">dbi Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.dbi-services.com/blog/weblogic-14-elastic-stack-from-metrics-to-predictive-insights/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>WebLogic 14: What’s New and Why It Matters</title>
		<link>https://www.dbi-services.com/blog/weblogic-14-whats-new-and-why-it-matters/</link>
					<comments>https://www.dbi-services.com/blog/weblogic-14-whats-new-and-why-it-matters/#respond</comments>
		
		<dc:creator><![CDATA[David Diab]]></dc:creator>
		<pubDate>Mon, 29 Sep 2025 08:42:47 +0000</pubDate>
				<category><![CDATA[Application integration & Middleware]]></category>
		<category><![CDATA[WebLogic]]></category>
		<category><![CDATA[release]]></category>
		<guid isPermaLink="false">https://www.dbi-services.com/blog/?p=40404</guid>

					<description><![CDATA[<p>After years working with WebLogic and other application servers (JBoss, WildFly, Tomcat, etc.), I’ve seen most of the challenges enterprises face: domains that refuse to start, clusters that behave unpredictably, and performance issues caused by poor configurations. What experience has taught me is clear: when Best Practices are applied, environments are far more stable and [&#8230;]</p>
<p>L’article <a href="https://www.dbi-services.com/blog/weblogic-14-whats-new-and-why-it-matters/">WebLogic 14: What’s New and Why It Matters</a> est apparu en premier sur <a href="https://www.dbi-services.com/blog">dbi Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>After years working with WebLogic and other application servers (JBoss, WildFly, Tomcat, etc.), I’ve seen most of the challenges enterprises face: domains that refuse to start, clusters that behave unpredictably, and performance issues caused by poor configurations. What experience has taught me is clear: when Best Practices are applied, environments are far more stable and easier to manage.</p>



<span id="more-40404"></span>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="400" src="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2025/09/1_xPL5LusRjLnv_qict4-KNA.jpg" alt="" class="wp-image-40481" style="width:631px;height:auto" srcset="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2025/09/1_xPL5LusRjLnv_qict4-KNA.jpg 800w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2025/09/1_xPL5LusRjLnv_qict4-KNA-300x150.jpg 300w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2025/09/1_xPL5LusRjLnv_qict4-KNA-768x384.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>With the release of WebLogic 14.1.2, Oracle has introduced significant updates that directly affect stability, security, and modernization. Below is an overview of what’s new and what it means for organizations planning to upgrade.</p>



<h2 class="wp-block-heading">A Quick Stroll Through WebLogic History</h2>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>Version</th><th>Release Date</th><th>Comment</th></tr></thead><tbody><tr><td>10.3.x</td><td>2009–2012</td><td>The “legacy” version — still found in production in 2025.</td></tr><tr><td>12.1.x</td><td>2011</td><td>Added Java EE 6 support.</td></tr><tr><td>12.2.1.x</td><td>2015</td><td>Introduced multitenancy, scaling, and many incremental patches.</td></tr><tr><td>14.1.1</td><td>2020</td><td>First in the 14 series: Java EE 8, TLS defaults.</td></tr><tr><td>14.1.2</td><td>2024</td><td>Current release: JDK 17/21 support, stronger security, new tooling.</td></tr></tbody></table></figure>



<h2 class="wp-block-heading">What’s New in WebLogic 14</h2>



<h3 class="wp-block-heading">1. Modern Java Support</h3>



<p>WebLogic 14.1.2 now officially supports <strong>JDK 17 and JDK 21</strong>. This provides access to performance improvements (e.g., G1GC, ZGC) and modern Java language features such as records, sealed classes, and switch expressions.</p>



<p><strong>Impact for organizations:</strong></p>



<ul class="wp-block-list">
<li>Applications gain performance and security improvements.</li>



<li>Stricter Java module system may expose hidden dependencies.</li>



<li>Legacy libraries or reflection-based solutions may fail.</li>



<li>Outdated JDBC drivers and frameworks may require upgrading.</li>
</ul>



<h3 class="wp-block-heading">2. Strengthened Security Defaults</h3>



<p>Security has been significantly improved in WebLogic 14:</p>



<ul class="wp-block-list">
<li><strong>OpenID Connect</strong> support for integration with modern identity providers.</li>



<li><strong>TLS 1.0 and 1.1 removed</strong>; only strong cryptographic protocols are supported.</li>



<li><strong>Domain-specific demo certificates</strong> using PKCS12 keystores by default.</li>
</ul>



<p><strong>Impact for organizations:</strong></p>



<ul class="wp-block-list">
<li>Easier integration with enterprise authentication and identity management.</li>



<li>Legacy systems that depend on outdated SSL/TLS protocols will need upgrades.</li>
</ul>



<h3 class="wp-block-heading">3. Administration Console Evolution</h3>



<p>The traditional WebLogic Admin Console has been retired and replaced with the <strong>Remote Console</strong>, a lightweight web application that communicates via REST APIs.</p>



<p><strong>Advantages:</strong></p>



<ul class="wp-block-list">
<li>Manage WebLogic securely from anywhere.</li>



<li>Console can be upgraded independently from the server.</li>
</ul>



<p><strong>Considerations:</strong></p>



<ul class="wp-block-list">
<li>Administrators must adapt to a new interface.</li>



<li>Existing procedures, documentation, and training materials will require updates.</li>
</ul>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="800" height="728" src="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2025/09/1754382750771.jpg" alt="" class="wp-image-40480" srcset="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2025/09/1754382750771.jpg 800w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2025/09/1754382750771-300x273.jpg 300w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2025/09/1754382750771-768x699.jpg 768w" sizes="auto, (max-width: 800px) 100vw, 800px" /></figure>



<h3 class="wp-block-heading">4. Migration and Refactoring Tools</h3>



<p>Oracle introduced two new tools to assist with upgrades:</p>



<ul class="wp-block-list">
<li><strong>Migration Analysis Tool (MAT):</strong> Scans applications and reports compatibility issues.</li>



<li><strong>OpenRewrite Recipes:</strong> Automates some application refactoring tasks.</li>
</ul>



<p><strong>Considerations:</strong></p>



<ul class="wp-block-list">
<li>These tools provide useful guidance, but results often require expert interpretation.</li>



<li>Automated refactoring may only cover part of the necessary work.</li>
</ul>



<h3 class="wp-block-heading">5. Clustering and Database Enhancements</h3>



<p>Enhancements in high availability and database integration include:</p>



<ul class="wp-block-list">
<li><strong>Health-based routing:</strong> Routes requests to the healthiest available node.</li>



<li><strong>Database client modules:</strong> Simplify integration in Kubernetes and containerized environments.</li>



<li><strong>Improved failover and multi-data center support:</strong> Reduce complexity in HA deployments.</li>
</ul>



<p><strong>Impact for organizations:</strong></p>



<ul class="wp-block-list">
<li>More reliable clustering.</li>



<li>Simplified operations in cloud and hybrid environments.</li>



<li>Better resilience in multi-DC architectures.</li>
</ul>



<h2 class="wp-block-heading" id="h-should-you-upgrade">Should You Upgrade?</h2>



<p>Short answer: yes. Long answer: yes, but carefully.</p>



<p>Sticking with 12c in 2025 is like still using Internet Explorer &#8211; technically possible, but also technically embarrassing. At some point, Oracle’s support matrix will drop you, and then you’re one zero-day away from chaos.</p>



<p>In another world, continuing to run WebLogic 12c in 2025 is increasingly difficult to justify:</p>



<ul class="wp-block-list">
<li>Security vulnerabilities accumulate as older versions leave support.</li>



<li>Integration with modern Java, Kubernetes, and identity providers becomes more challenging.</li>



<li>Oracle’s support matrix is moving forward, and legacy environments are becoming costly liabilities.</li>
</ul>



<h2 class="wp-block-heading">Final Thoughts</h2>



<p>WebLogic 14 is not just an incremental update. It modernizes the platform with stronger security, cloud-native capabilities, and support for the latest Java standards. At the same time, it introduces changes that require careful planning to avoid disruption.</p>



<p>This is where experienced guidance is valuable. With years of WebLogic consulting experience, I support organizations by:</p>



<ul class="wp-block-list">
<li>Auditing WebLogic installation for compatibility issues before migration.</li>



<li>Planning and executing upgrades with minimal downtime.</li>



<li>Configuring new security features and administration tools correctly.</li>



<li>Coaching development and operations teams to adapt to the changes.</li>
</ul>



<p><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> If your organization is considering upgrading to <strong>WebLogic 14</strong>, let’s discuss how to make the transition smooth, secure, and future-proof.</p>



<p>Happy to share,</p>



<p>David</p>



<p>Have a look to all <a href="https://www.dbi-services.com/blog/author/david-diab/" target="_blank" rel="noreferrer noopener">my blogs</a></p>
<p>L’article <a href="https://www.dbi-services.com/blog/weblogic-14-whats-new-and-why-it-matters/">WebLogic 14: What’s New and Why It Matters</a> est apparu en premier sur <a href="https://www.dbi-services.com/blog">dbi Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.dbi-services.com/blog/weblogic-14-whats-new-and-why-it-matters/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Oracle FMW 14 Installation &#8211; ORA-00439: feature not enabled: Fine-grained access control</title>
		<link>https://www.dbi-services.com/blog/oracle-fmw-14-installation-ora-00439-feature-not-enabled-fine-grained-access-control/</link>
					<comments>https://www.dbi-services.com/blog/oracle-fmw-14-installation-ora-00439-feature-not-enabled-fine-grained-access-control/#respond</comments>
		
		<dc:creator><![CDATA[David Diab]]></dc:creator>
		<pubDate>Tue, 23 Sep 2025 21:29:47 +0000</pubDate>
				<category><![CDATA[Application integration & Middleware]]></category>
		<category><![CDATA[WebLogic]]></category>
		<category><![CDATA[Fusion Middleware]]></category>
		<category><![CDATA[Installation]]></category>
		<category><![CDATA[Oracle]]></category>
		<guid isPermaLink="false">https://www.dbi-services.com/blog/?p=39382</guid>

					<description><![CDATA[<p>This short blog is to share with you an issue we faced at a customer during Oracle Fusion Middleware 14 installation. Introduction and Symptoms An important step in the installation process is the Oracle Fusion Middleware Metadata repository creation using the RCU (Repository Creation Utility) which creates the necessary schemas for the components. But when [&#8230;]</p>
<p>L’article <a href="https://www.dbi-services.com/blog/oracle-fmw-14-installation-ora-00439-feature-not-enabled-fine-grained-access-control/">Oracle FMW 14 Installation &#8211; ORA-00439: feature not enabled: Fine-grained access control</a> est apparu en premier sur <a href="https://www.dbi-services.com/blog">dbi Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>This short blog is to share with you an issue we faced at a customer during Oracle Fusion Middleware 14 installation.</p>



<span id="more-39382"></span>



<figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" width="701" height="401" src="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2025/09/1520187287514.jpg" alt="" class="wp-image-40316" style="width:573px;height:auto" srcset="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2025/09/1520187287514.jpg 701w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2025/09/1520187287514-300x172.jpg 300w" sizes="auto, (max-width: 701px) 100vw, 701px" /></figure>



<p></p>



<h2 class="wp-block-heading" id="h-introduction-and-symptoms">Introduction and Symptoms</h2>



<p>An important step in the installation process is the Oracle Fusion Middleware Metadata repository creation using the RCU (Repository Creation Utility) which creates the necessary schemas for the components.</p>



<p> But when running the Repository Creation Utility (RCU) to load schemas on Oracle Database, schema creation fails with the below errors:</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="635" height="499" src="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2025/07/image-8.png" alt="" class="wp-image-39385" srcset="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2025/07/image-8.png 635w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2025/07/image-8-300x236.png 300w" sizes="auto, (max-width: 635px) 100vw, 635px" /></figure>



<p>In fact, the problem is seen as RCU tries to set up VPD stripes. In another world, RCU relies on fine-grained access control (FGAC) to manage schema creation and access within the Oracle database. </p>



<p>The ORA-00439 error &#8220;feature not enabled: Fine-grained access control&#8221; in Oracle RCU (Repository Creation Utility) indicates that the database being used for RCU schema creation does not have the <strong>fine-grained access control feature enabled</strong>. This feature is only part of the <strong>Enterprise Edition</strong> of Oracle Database and is not available in Standard Edition!</p>



<p>Let&#8217;s check <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f609.png" alt="😉" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="538" height="191" src="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2025/07/image-7.png" alt="" class="wp-image-39384" srcset="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2025/07/image-7.png 538w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2025/07/image-7-300x107.png 300w" sizes="auto, (max-width: 538px) 100vw, 538px" /></figure>



<p>So, no way to do it with Standard Edition? No worries, there is a solution <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f609.png" alt="😉" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>



<h2 class="wp-block-heading" id="h-solution">Solution</h2>



<p>Oracle here is a patch to workaround this issue, so the steps will be:</p>



<ul class="wp-block-list">
<li>Download the patch</li>



<li>Apply the patch</li>



<li>Run the RCU to load the schemas</li>



<li>Continue with Domain configuration</li>
</ul>



<p><strong>Download the patch</strong></p>



<p>Go to <a href="https://support.oracle.com/epmos/faces/ui/patch/PatchDetail.jspx?parent=DOCUMENT&amp;sourceId=3083393.1&amp;patchId=37506854" target="_blank" rel="noreferrer noopener">Patch 37506854</a> and download it, then move it to your working folder on the server.</p>



<p><strong>Apply the patch</strong></p>



<p>Nothing really special here, apply the patch as any patch <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>



<p>Unzip the patch downloaded, go inside the folder 37506854, and apply the patch:</p>



<pre class="wp-block-code"><code>&#091;oracle@fmwserver working]$ cd 37506854
&#091;oracle@fmwserver 37506854]$ opatch apply
Oracle Interim Patch Installer version 13.9.4.2.17
Copyright (c) 2025, Oracle Corporation.  All rights reserved.


Oracle Home       : /u01/app/oracle/product/midw
Central Inventory : /u01/app/oracle/oraInventory
   from           : /u01/app/oracle/product/midw//oraInst.loc
OPatch version    : 13.9.4.2.17
OUI version       : 13.9.4.0.0
Log file location : /u01/app/oracle/product/midw/cfgtoollogs/opatch/opatch2025-07-10_11-22-38AM_1.log


OPatch detects the Middleware Home as "/u01/app/oracle/product/midw"

Verifying environment and performing prerequisite checks...
OPatch continues with these patches:   37506854

Do you want to proceed? &#091;y|n]
y
User Responded with: Y
All checks passed.

Please shutdown Oracle instances running out of this ORACLE_HOME on the local system.
(Oracle Home = '/u01/app/oracle/product/midw')


Is the local system ready for patching? &#091;y|n]
y
User Responded with: Y
Backing up files...
Applying interim patch '37506854' to OH '/u01/app/oracle/product/midw'

Patching component oracle.rcu.mds, 14.1.2.0.0...

Patching component oracle.rcu.mds, 14.1.2.0.0...
Patch 37506854 successfully applied.
Log file location: /u01/app/oracle/product/midw/cfgtoollogs/opatch/opatch2025-07-10_11-22-38AM_1.log

OPatch succeeded.</code></pre>



<p><strong>Retry the failed step</strong></p>



<p>Now, the RCU should work fine and the domain creation could be done without issue.</p>



<p>Have a look on all FMW <a href="https://www.dbi-services.com/blog/tag/oracle-fusion-middleware/" target="_blank" rel="noreferrer noopener">blogs</a>, more blogs to come about FMW 14 to highlight new features!</p>



<p>If you have any questions don&#8217;t hesitate, please ask <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f609.png" alt="😉" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>



<p>Happy to share,</p>



<p>David<br></p>
<p>L’article <a href="https://www.dbi-services.com/blog/oracle-fmw-14-installation-ora-00439-feature-not-enabled-fine-grained-access-control/">Oracle FMW 14 Installation &#8211; ORA-00439: feature not enabled: Fine-grained access control</a> est apparu en premier sur <a href="https://www.dbi-services.com/blog">dbi Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.dbi-services.com/blog/oracle-fmw-14-installation-ora-00439-feature-not-enabled-fine-grained-access-control/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>JBoss EAP 7 &#8211; Use vault to protect passwords</title>
		<link>https://www.dbi-services.com/blog/jboss-eap-7-use-vault-to-protect-your-passwords/</link>
					<comments>https://www.dbi-services.com/blog/jboss-eap-7-use-vault-to-protect-your-passwords/#comments</comments>
		
		<dc:creator><![CDATA[David Diab]]></dc:creator>
		<pubDate>Mon, 04 Sep 2023 11:59:58 +0000</pubDate>
				<category><![CDATA[WebLogic]]></category>
		<category><![CDATA[JBoss]]></category>
		<category><![CDATA[JBoss EAP]]></category>
		<category><![CDATA[JBoss-EAP]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[WildFly]]></category>
		<guid isPermaLink="false">https://www.dbi-services.com/blog/?p=27571</guid>

					<description><![CDATA[<p>JBoss EAP simplifies a lot of server configuration by consolidating all subsystem configurations into a single XML file (standalone.xml or domain.xml). This, however, can expose sensitive information to any user that has access to the configuration files. For example, datasource credentials are by default stored in plain text in the XML file. In this blog [&#8230;]</p>
<p>L’article <a href="https://www.dbi-services.com/blog/jboss-eap-7-use-vault-to-protect-your-passwords/">JBoss EAP 7 &#8211; Use vault to protect passwords</a> est apparu en premier sur <a href="https://www.dbi-services.com/blog">dbi Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>JBoss EAP simplifies a lot of server configuration by consolidating all subsystem configurations into a  single XML file (standalone.xml or domain.xml). This, however, can expose sensitive information to any user that has access to the configuration files. For example, datasource credentials are by default stored in plain text in the XML file. In this blog I will show you how to protect your passwords!</p>



<span id="more-27571"></span>



<h2 class="wp-block-heading" id="h-what-is-the-vault-password">What is the vault password?</h2>



<p>The vault encrypts sensitive strings, stores them in an encrypted keystore, and decrypts them for  applications and verification systems. To avoid leaving sensitive credentials readable in the <em>standalone.xml</em> or <em>domain.xml</em> files, you can store passwords or other attributes in the vault and then reference the vault from within the server configuration file. </p>



<p>Using a vault creates a level of abstraction and obfuscates data which could otherwise be read by anyone who has access to the configuration files. Please note that the access to the configuration files should be anyway restricted.</p>



<h2 class="wp-block-heading" id="h-create-a-java-keystore-to-store-sensitive-strings">Create a Java Keystore to store sensitive strings</h2>



<p>The vault utilizes a keystore by using the certificate stored in the keystore as an encryption key for the  vault as a whole. To initialize the vault, users need to first create the JavaSE keystore. The following is the syntax used to create a private key, a certificate and to store them in a keystore:</p>



<pre class="wp-block-code"><code>keytool -genseckey -alias &lt;alias&gt; -keyalg &lt;algorithm&gt; -storetype &lt;type&gt; -keysize size -keystore &lt;filepath&gt;</code></pre>



<ul class="wp-block-list">
<li>alias: The alias is a unique identifier for the vault or other data stored in the keystore.</li>



<li>keyalg: The algorithm to use for encryption.</li>



<li>storetype: The keystore type. jceks is the recommended type.</li>



<li>keysize The size of the encryption key which determines the difficulty in brute forcing the<br>key.</li>



<li>keystore: The file path and file name in which the keystore&#8217;s values are stored.</li>
</ul>



<p>The below is an example:</p>



<pre class="wp-block-code"><code>&#091;jboss@vmjboss jboss]# keytool -genseckey -alias vault -keyalg AES -storetype jceks -keysize 128 -keystore /app/jboss/vault.keystore
Enter keystore password:  
Re-enter new password: 
Enter key password for &lt;vault&gt;
	(RETURN if same as keystore password):  

Warning:
The JCEKS keystore uses a proprietary format. It is recommended to migrate to PKCS12 which is an industry standard format using "keytool -importkeystore -srckeystore /app/jboss/vault.keystore -destkeystore /app/jboss/vault.keystore -deststoretype pkcs12".
&#091;jboss@vmjboss jboss]# ls -rtl /app/jboss/
total 4
-rw-r--r-- 1 jboss jboss 500 Sep  4 10:56 vault.keystore</code></pre>



<p>After running the command, you will be prompted for a keystore password and a keystore file will be created at /app/jboss/vault.keystore.</p>



<h2 class="wp-block-heading" id="h-using-the-vault">Using the vault</h2>



<p>The vault can be initialized either interactively, by providing each parameter one at a time, or by providing all of the parameters initially.</p>



<p>The following is an example of the syntax used to initialize the vault:</p>



<pre class="wp-block-code"><code>vault.sh --keystore KEYSTORE_URL --keystore-password KEYSTORE_PASSWORD --alias KEYSTORE_ALIAS --vault-block VAULT_BLOCK --attribute ATTRIBUTE --sec-attr SEC-ATTR --enc-dir ENC_FILE_DIR --iteration ITERATION_COUNT --salt SALT</code></pre>



<p>The following parameters are required to initialize the vault:</p>



<ul class="wp-block-list">
<li>KEYSTORE_URL: The path to the previously created keystore file.</li>



<li>KEYSTORE_PASSWORD: The password to access the keystore that was used at the keystore&#8217;s<br>creation.</li>



<li>SALT: A random string of eight characters used to encrypt the attribute stored in the vault.</li>



<li>KEYSTORE_ALIAS: The alias that identifies the certificate stored in the keystore.</li>



<li>ITERATION_COUNT: The number of times encryption is run.</li>



<li>ENC_FILE_DIR: The path where the encrypted files are stored.</li>



<li>VAULT_BLOCK: The name to be given to the block in the vault.</li>



<li>ATTRIBUTE: The name of the attribute being stored. For example, &#8220;password&#8221; as an attribute<br>name when storing a password value.</li>



<li>SEC-ATTR: The value being stored.</li>
</ul>



<p>The following is an example with the parameters populated:</p>



<pre class="wp-block-code"><code>&#091;jboss@vmjboss bin]# vault.sh --keystore /app/jboss/vault.keystore --keystore-password password --alias vault --vault-block blog --attribute password --sec-attr blogpass --enc-dir /app/jboss/ --iteration 50 --salt 12345678</code></pre>



<p>After running the vault.sh command, an XML definition of the vault is displayed, which needs to be added to the server configuration files. The following is an example of the XML that needs to be added to either the <em>standalone.xml</em> or <em>host.xml </em>configuration file directly before the section:</p>



<pre class="wp-block-code"><code>&lt;vault&gt;
&lt;vault-option name="KEYSTORE_URL" value="/app/jboss/vault.keystore"/&gt;
&lt;vault-option name="KEYSTORE_PASSWORD" value="MASK-31x/z0Xn83H4JaL0h5eK/N"/&gt;
&lt;vault-option name="KEYSTORE_ALIAS" value="vault"/&gt;
&lt;vault-option name="SALT" value="12345678"/&gt;
&lt;vault-option name="ITERATION_COUNT" value="50"/&gt;
&lt;vault-option name="ENC_FILE_DIR" value="/app/jboss/"/&gt;
&lt;/vault&gt;</code></pre>



<p>The final step is to replace the sensitive data with a reference to the attribute in the vault. The vault.sh command provides the exact syntax necessary to reference the secured attribute after all of the parameters are provided. Using the previous example, the vault command generated the following:</p>



<pre class="wp-block-code"><code>VAULT::blog::password::1</code></pre>



<p>In order to use this reference, use the following syntax within the server configuration:</p>



<pre class="wp-block-code"><code>${VAULT::VAULT_BLOCK::ATTRIBUTE_NAME::1}</code></pre>



<p>The following can replace the previous password in the server configuration for the blog datasource password:</p>



<pre class="wp-block-code"><code>${VAULT::blog::password::1}</code></pre>



<p>After replacing the password for the datasource, the server configuration for the datasource will look similar to the following:</p>



<pre class="wp-block-code"><code>&lt;datasource jndi-name="java:jboss/datasources/blogope" ...&gt;
&lt;connection-url&gt;...&lt;/connection-url&gt;
&lt;driver&gt;mysql&lt;/driver&gt;
&lt;security&gt;
&lt;user-name&gt;blogadmin&lt;/user-name&gt;
&lt;password&gt;<strong>${VAULT::blog::password::1}</strong>&lt;/password&gt;
&lt;/security&gt;
&lt;/datasource&gt;</code></pre>



<p>In this blog we saw how to protect passwords or any sensitive data in configuration files. Don&#8217;t forget to restrict the access to your configuration files also!</p>



<p>Don&#8217;t hesitate to comment this blog, for any question or to share your experience with vault within JBoss EAP. </p>



<p>Some blogs around JBoss EAP:</p>



<ul class="wp-block-list">
<li>J<a href="https://www.dbi-services.com/blog/jboss-eap-7-modules-extensions-subsystems-and-profiles/">Boss EAP 7 – Modules, Extensions, Subsystems, and Profiles</a></li>



<li><a href="https://www.dbi-services.com/blog/jboss-eap-7-domain-creation/">JBoss EAP 7 – Domain creation</a></li>



<li><a href="https://www.dbi-services.com/blog/jboss-eap-7-cluster-in-standalone-mode/">JBoss EAP 7 – Cluster in Standalone mode</a></li>
</ul>
<p>L’article <a href="https://www.dbi-services.com/blog/jboss-eap-7-use-vault-to-protect-your-passwords/">JBoss EAP 7 &#8211; Use vault to protect passwords</a> est apparu en premier sur <a href="https://www.dbi-services.com/blog">dbi Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.dbi-services.com/blog/jboss-eap-7-use-vault-to-protect-your-passwords/feed/</wfw:commentRss>
			<slash:comments>8</slash:comments>
		
		
			</item>
		<item>
		<title>Unable to start WebLogic Admin Server during host reconfiguration</title>
		<link>https://www.dbi-services.com/blog/unable-to-start-weblogic-admin-server-during-host-reconfiguration/</link>
					<comments>https://www.dbi-services.com/blog/unable-to-start-weblogic-admin-server-during-host-reconfiguration/#respond</comments>
		
		<dc:creator><![CDATA[Middleware Team]]></dc:creator>
		<pubDate>Tue, 29 Aug 2023 13:51:15 +0000</pubDate>
				<category><![CDATA[Application integration & Middleware]]></category>
		<category><![CDATA[WebLogic]]></category>
		<category><![CDATA[chghost.sh]]></category>
		<category><![CDATA[Oracle Fusion Middleware]]></category>
		<category><![CDATA[Reconfiguration]]></category>
		<guid isPermaLink="false">https://www.dbi-services.com/blog/?p=27537</guid>

					<description><![CDATA[<p>In my previous blog named &#8220;Changing Fusion Middleware repository database&#8220;, I explained how to move a Fusion Middleware repository database from one host to a new host. During the run of this exercise, I came over an issue with the chghost.sh script failing to start the WebLogic Administration Server with the following error: Investigating on [&#8230;]</p>
<p>L’article <a href="https://www.dbi-services.com/blog/unable-to-start-weblogic-admin-server-during-host-reconfiguration/">Unable to start WebLogic Admin Server during host reconfiguration</a> est apparu en premier sur <a href="https://www.dbi-services.com/blog">dbi Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>In my previous blog named &#8220;<a href="https://www.dbi-services.com/blog/changing-fusion-middleware-repository-database/">Changing Fusion Middleware repository database</a>&#8220;, I explained how to move a Fusion Middleware repository database from one host to a new host. During the run of this exercise, I came over an issue with the chghost.sh script failing to start the WebLogic Administration Server with the following error:</p>



<pre class="wp-block-code"><code>Aug 10, 2023 3:53:47 AM oracle.glcm.fmw.chghost.framework.plugin.impl.t2p.T2PPluginExecutorImpl startAdminServer
INFO: /u02/weblogic/config/12c/domains/fr-domain  ias_admin  password : *** srv-linux-wls1.it.dbi-services.com  7001  /u00/app/weblogic/12cR4/Middleware
java.io.IOException: Cannot run program "/tmp/CLONINGCLIENT2006552337794141616/coredb_start_script1691632427319.sh": error=13, Permission denied
        at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
        at java.lang.Runtime.exec(Runtime.java:593)
        at java.lang.Runtime.exec(Runtime.java:423)
        at java.lang.Runtime.exec(Runtime.java:320)
        at oracle.as.t2p.sdk.util.CommandInvokationUtil$ThreadDaemon.run(CommandInvokationUtil.java:259)
        at java.lang.Thread.run(Thread.java:750)
Caused by: java.io.IOException: error=13, Permission denied
        at java.lang.UNIXProcess.forkAndExec(Native Method)
        at java.lang.UNIXProcess.&lt;init&gt;(UNIXProcess.java:247)
        at java.lang.ProcessImpl.start(ProcessImpl.java:134)
        at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
        ... 5 more
java.io.IOException: Cannot run program "/tmp/CLONINGCLIENT2006552337794141616/coredb_admin_pid_script1691632427336.sh": error=13, Permission denied
        at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
        at java.lang.Runtime.exec(Runtime.java:593)
        at java.lang.Runtime.exec(Runtime.java:423)
        at java.lang.Runtime.exec(Runtime.java:320)
        at oracle.as.t2p.sdk.util.CommandInvokationUtil$ThreadDaemon.run(CommandInvokationUtil.java:259)
        at java.lang.Thread.run(Thread.java:750)
Caused by: java.io.IOException: error=13, Permission denied
        at java.lang.UNIXProcess.forkAndExec(Native Method)
        at java.lang.UNIXProcess.&lt;init&gt;(UNIXProcess.java:247)
        at java.lang.ProcessImpl.start(ProcessImpl.java:134)
        at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
        ... 5 more</code></pre>



<p>Investigating on the error, I find out that the chghost.sh script writes some scripts in the /tmp folder and execute them to start the WebLogic Administration Server. This fails because the tmp file system was mounted with the noexec flag for security reasons. When it comes to security reasons, it is very difficult to change the systems configuration. I took me some time to found the solution  and thought it would be helpful for others if I publish it in a blog.</p>



<p>The workaround is to set the &#8220;java.io.tmpdir&#8221; in the chghost.sh environment as follow:</p>



<pre class="wp-block-code"><code>export CHGHOST_JAVA_OPTIONS="-Djava.io.tmpdir=/u01/app/oracle/tmp/”  </code></pre>



<p>After setting this variable, the chghost tool will use the new tmp directory to run the scripts generated to start the WebLogic Admin Server.</p>



<p>The other problem encountered was that the chghost tool was not able to connect to an SSL enabled port. I had to enable the http port 7001 during the run of the tool.</p>
<p>L’article <a href="https://www.dbi-services.com/blog/unable-to-start-weblogic-admin-server-during-host-reconfiguration/">Unable to start WebLogic Admin Server during host reconfiguration</a> est apparu en premier sur <a href="https://www.dbi-services.com/blog">dbi Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.dbi-services.com/blog/unable-to-start-weblogic-admin-server-during-host-reconfiguration/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Changing Fusion Middleware repository database</title>
		<link>https://www.dbi-services.com/blog/changing-fusion-middleware-repository-database/</link>
					<comments>https://www.dbi-services.com/blog/changing-fusion-middleware-repository-database/#comments</comments>
		
		<dc:creator><![CDATA[Middleware Team]]></dc:creator>
		<pubDate>Mon, 17 Apr 2023 07:22:43 +0000</pubDate>
				<category><![CDATA[Application integration & Middleware]]></category>
		<category><![CDATA[WebLogic]]></category>
		<category><![CDATA[metadata repository]]></category>
		<category><![CDATA[Oracle Fusion Middleware]]></category>
		<category><![CDATA[Reconfiguration]]></category>
		<guid isPermaLink="false">https://www.dbi-services.com/blog/?p=23939</guid>

					<description><![CDATA[<p>In my previous blog named &#8220;Changing Fusion Middleware Forms and Reports repository database&#8220;, I explained how to move a Fusion Middleware Forms and Reports repository from one database to a new database where some other repositories already exist. In this blog, I will explain how to move Fusion Middleware repositories from one database to a [&#8230;]</p>
<p>L’article <a href="https://www.dbi-services.com/blog/changing-fusion-middleware-repository-database/">Changing Fusion Middleware repository database</a> est apparu en premier sur <a href="https://www.dbi-services.com/blog">dbi Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>In my previous blog named &#8220;<a href="https://www.dbi-services.com/blog/changing-fusion-middleware-forms-and-reports-repository-database/">Changing Fusion Middleware Forms and Reports repository database</a>&#8220;, I explained how to move a Fusion Middleware Forms and Reports repository from one database to a new database where some other repositories already exist. In this blog, I will explain how to move Fusion Middleware repositories from one database to a brand new database.</p>



<p>The Fusion Middleware repository database migration has been done following the <a href="https://docs.oracle.com/en/middleware/fusion-middleware/12.2.1.4/asadm/changing-network-configurations.html#GUID-2D7EA551-C00D-4604-B02F-1468EEC1F040" target="_blank" rel="noreferrer noopener">Oracle Fusion Middleware 12.2.1.4 – Administering Oracle Fusion Middleware</a> documentation. The following restrictions applies to this kind of move:</p>



<ul class="wp-block-list">
<li>The service name and SID of the database on the target host must be the same as on the source host.</li>



<li>The port on the target host must be the same as on the source host.</li>



<li>The database on the target host must contain the same schemas as on the source host and the schemas must have the same prefix as on the source host.</li>
</ul>



<p>The Repository Creation Utility (RCU) gives the possibility to create SQL scripts to create the system tables and information plus the Fusion Middleware product repository schemas and tables. We will use this functionality to configure the new database to host the migrated repository.</p>



<p>Using the RCU located in the $ORACLE_HOME/oracle_common/bin directory of the Fusion Middleware product I want to migrate the repository, I will generate the scripts that will create all needed objects in the target database for this database to become a Fusion Middleware repository database. Below are the steps I run to archive this.</p>



<p>I start the RCU and select &#8220;Create repository&#8221; and &#8220;Prepare Scripts for System loads&#8221;.</p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="602" height="469" src="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/image-18.png" alt="" class="wp-image-23940" srcset="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/image-18.png 602w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/image-18-300x234.png 300w" sizes="auto, (max-width: 602px) 100vw, 602px" /></figure>
</div>


<p>I provide the connection information to the target database. </p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="602" height="469" src="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/image-19.png" alt="" class="wp-image-23941" srcset="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/image-19.png 602w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/image-19-300x234.png 300w" sizes="auto, (max-width: 602px) 100vw, 602px" /></figure>
</div>


<p>RCU checks if the target database fulfill the prerequisites.</p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="602" height="472" src="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/image-20.png" alt="" class="wp-image-23942" srcset="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/image-20.png 602w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/image-20-300x235.png 300w" sizes="auto, (max-width: 602px) 100vw, 602px" /></figure>
</div>


<p>I choose the same prefix as on the source database and the same list of components.</p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="602" height="472" src="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/image-21.png" alt="" class="wp-image-23943" srcset="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/image-21.png 602w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/image-21-300x235.png 300w" sizes="auto, (max-width: 602px) 100vw, 602px" /></figure>
</div>


<p>RCU checks the prerequisites for the components selected.</p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="602" height="470" src="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/image-22.png" alt="" class="wp-image-23945" srcset="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/image-22.png 602w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/image-22-300x234.png 300w" sizes="auto, (max-width: 602px) 100vw, 602px" /></figure>
</div>


<p>Once all is validated, I click on the &#8220;Generate&#8221; button to create the DBA script.</p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="602" height="468" src="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/image-23.png" alt="" class="wp-image-23946" srcset="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/image-23.png 602w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/image-23-300x233.png 300w" sizes="auto, (max-width: 602px) 100vw, 602px" /></figure>
</div>


<p>This raises a process to generate the DBA scripts.</p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="602" height="471" src="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/image-24.png" alt="" class="wp-image-23947" srcset="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/image-24.png 602w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/image-24-300x235.png 300w" sizes="auto, (max-width: 602px) 100vw, 602px" /></figure>
</div>


<p>Once finalized, the &#8220;Completion Summary&#8221; screen shows the scripts location and the RCU log file name</p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="602" height="473" src="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/image-25.png" alt="" class="wp-image-23948" srcset="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/image-25.png 602w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/image-25-300x236.png 300w" sizes="auto, (max-width: 602px) 100vw, 602px" /></figure>
</div>


<p><code>Scripts&nbsp;: /tmp/RCU2023-03-13_13-38_739854221/logs/</code></p>



<p>Run the script &#8220;script_systemLoad.sql&#8221; on the target database as user having the DBA privileges to create the Fusion Middleware system objects and the product metadata schemas. </p>



<p>Once this is done, the rest of the steps are the same as in my previous blog <a href="https://www.dbi-services.com/blog/changing-fusion-middleware-forms-and-reports-repository-database/">Changing Fusion Middleware Forms and Reports repository database</a>&#8220;. Those are:</p>



<h3 class="wp-block-heading">Export all Fusion Middleware repository schemas from the source database</h3>



<p>Before exporting the schemas, you need to make sure the export will be done in the right character set. In my case, the recommended character set for Fusion Middleware was used: AL32UTF8</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
expdp system/***** schemas=VM40FR_STB,VM40FR_IAU_APPEND,VM40FR_IAU_VIEWER,VM40FR_MDS,VM40FR_WLS,VM40FR_WLS_RUNTIME,VM40FR_IAU,VM40FR_OPSS dumpfile=VM40FR.dpdmp﻿
</pre></div>


<h3 class="wp-block-heading">Import those schemas in the target database</h3>



<p>Same as for the database schemas export, the character set has to be correctly set in the NLS_LANG to avoid any character conversion or loose. </p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
impdp system/***** file=VM40FR.dpdmp
</pre></div>


<h3 class="wp-block-heading">Reconfigure the Fusion Middleware to use the new repository database</h3>



<p>The reconfiguration of the Fusion Middleware Forms &amp; Reports has been done using the chghost.sh tool but this one requires two files. The wallet containing the WebLogic domain administrator password and the mapping file describing the type of changes that the chghost.sh tool will apply. Before running the change host script, make sure no process is running for the Fusion Middleware WebLogic Domain. For example, if the node manager is started as Unix service, make sure to stop it or the change host tool will hang stopping the WebLogic managed servers.</p>



<p>Generate the wallet file for an administrator user named weblogic on my test environments.</p>



<pre class="wp-block-code"><code> $MW_HOME/oracle_common/common/bin/configWallet.sh -walletDir /home/oracle/CHGHOST_TEST weblogic</code></pre>



<p> Create the mapping file. db_host_move.txt in this case.</p>



<pre class="wp-block-code"><code>&#091;ARGUMENTS] &#091;DATABASE_MAPPING] 
#  You can only change the database host name. 
vm07.it.dbi-services.com=vm09.it.dbi-services.com</code></pre>



<p>Finally run the chghost.sh script.</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
cd /app/oracle/12c/Middleware/oracle_common/bin/ 
./chghost.sh -chgHostInputFile /home/oracle/CHGHOST_TEST/db_host_move.txt  -javaHome /app/oracle/Java/jdk1.8.0_321 -domainLoc /data/config/12c/domains/vm12fr -domainAdminUserName weblogic -walletDir /home/oracle/CHGHOST_TEST  -logPriority FINEST  -logDir /home/oracle/CHGHOST_TEST/logs
</pre></div><p>L’article <a href="https://www.dbi-services.com/blog/changing-fusion-middleware-repository-database/">Changing Fusion Middleware repository database</a> est apparu en premier sur <a href="https://www.dbi-services.com/blog">dbi Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.dbi-services.com/blog/changing-fusion-middleware-repository-database/feed/</wfw:commentRss>
			<slash:comments>4</slash:comments>
		
		
			</item>
		<item>
		<title>Oracle WebLogic Docker Images</title>
		<link>https://www.dbi-services.com/blog/oracle-weblogic-docker-images/</link>
					<comments>https://www.dbi-services.com/blog/oracle-weblogic-docker-images/#respond</comments>
		
		<dc:creator><![CDATA[Middleware Team]]></dc:creator>
		<pubDate>Thu, 13 Apr 2023 11:13:44 +0000</pubDate>
				<category><![CDATA[WebLogic]]></category>
		<category><![CDATA[Docker]]></category>
		<guid isPermaLink="false">https://www.dbi-services.com/blog/?p=24513</guid>

					<description><![CDATA[<p>Oracle WebLogic container images stored on docker hub are deprecated. Oracle moved these on his own container registry: https://container-registry.oracle.com/ This registry contains many Oracle products, but we will focus on WebLogic in this blog. Prerequisites To be able to pull an image, you must be sign in and accept the license of the image. The [&#8230;]</p>
<p>L’article <a href="https://www.dbi-services.com/blog/oracle-weblogic-docker-images/">Oracle WebLogic Docker Images</a> est apparu en premier sur <a href="https://www.dbi-services.com/blog">dbi Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Oracle WebLogic container images stored on <a href="https://hub.docker.com/_/oracle-weblogic-server-12c" target="_blank" rel="noreferrer noopener">docker hub</a> are deprecated. Oracle moved these on his own container registry: <a href="https://container-registry.oracle.com/" target="_blank" rel="noreferrer noopener">https://container-registry.oracle.com/</a></p>



<p>This registry contains many Oracle products, but we will focus on WebLogic in this blog.</p>



<h2 class="wp-block-heading">Prerequisites</h2>



<p>To be able to pull an image, you must be sign in and accept the license of the image.</p>



<p>The license agreement is per image product (or repository as they called, but it might be confusing). Before you accept, it will look like that:</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="61" src="http://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/04/2023-04-13-08_58_11-Oracle-Container-Registry_-Explore-Oracle-Repositories-—-Mozilla-Firefox-1024x61.png" alt="" class="wp-image-24517" srcset="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/04/2023-04-13-08_58_11-Oracle-Container-Registry_-Explore-Oracle-Repositories-—-Mozilla-Firefox-1024x61.png 1024w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/04/2023-04-13-08_58_11-Oracle-Container-Registry_-Explore-Oracle-Repositories-—-Mozilla-Firefox-300x18.png 300w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/04/2023-04-13-08_58_11-Oracle-Container-Registry_-Explore-Oracle-Repositories-—-Mozilla-Firefox-768x46.png 768w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/04/2023-04-13-08_58_11-Oracle-Container-Registry_-Explore-Oracle-Repositories-—-Mozilla-Firefox-1536x91.png 1536w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/04/2023-04-13-08_58_11-Oracle-Container-Registry_-Explore-Oracle-Repositories-—-Mozilla-Firefox.png 1966w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">WebLogic License Agreement Pending</figcaption></figure>



<p>Note that Oracle also provides patched version of the images with latest CPU. I will go for the standard one.</p>



<p>To accept license, click on Continue button and read &#8220;Oracle Standard Terms and Restrictions&#8221;, then you can accept. After that, repository line will look like this:</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="43" src="http://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/04/2023-04-13-09_02_01-Oracle-Container-Registry_-Explore-Oracle-Repositories-—-Mozilla-Firefox-1024x43.png" alt="" class="wp-image-24518" srcset="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/04/2023-04-13-09_02_01-Oracle-Container-Registry_-Explore-Oracle-Repositories-—-Mozilla-Firefox-1024x43.png 1024w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/04/2023-04-13-09_02_01-Oracle-Container-Registry_-Explore-Oracle-Repositories-—-Mozilla-Firefox-300x13.png 300w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/04/2023-04-13-09_02_01-Oracle-Container-Registry_-Explore-Oracle-Repositories-—-Mozilla-Firefox-768x32.png 768w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/04/2023-04-13-09_02_01-Oracle-Container-Registry_-Explore-Oracle-Repositories-—-Mozilla-Firefox-1536x64.png 1536w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/04/2023-04-13-09_02_01-Oracle-Container-Registry_-Explore-Oracle-Repositories-—-Mozilla-Firefox.png 1965w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">WebLogic License Agreement Accepted</figcaption></figure>



<h2 class="wp-block-heading">Login</h2>



<p>Before pulling the image, I have to log into the registry:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; title: ; notranslate">
$ docker login container-registry.oracle.com
Username: &lt;username@domain.ch&gt;
Password:
WARNING! Your password will be stored unencrypted in /home/ols/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store

Login Succeeded
$
</pre></div>


<h2 class="wp-block-heading">Tags</h2>



<p>Before pulling the image, let&#8217;s see how tagging is done. Tags will allow you to select among many types of container images provided by Oracle:</p>



<ul class="wp-block-list">
<li>WebLogic server version: 14.1.1, 12.2.1.4, 12.2.1.3, &#8230;</li>



<li>Java version: 11.0.17, 8u351, &#8230;</li>



<li>Linux version: Oracle Linux 7u9, 8u4, &#8230;</li>



<li>Installation type: Generic, Slim, Developer</li>
</ul>



<p>Almost all of these could be combined to obtain the perfect image that fit your needs and constraints. Oracle even provides a nice table view with search capabilities and the associated pull command:</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="458" src="http://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/04/2023-04-13-09_26_57-Oracle-WebLogic-Server-Repository-Detail-—-Mozilla-Firefox-1024x458.png" alt="" class="wp-image-24519" srcset="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/04/2023-04-13-09_26_57-Oracle-WebLogic-Server-Repository-Detail-—-Mozilla-Firefox-1024x458.png 1024w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/04/2023-04-13-09_26_57-Oracle-WebLogic-Server-Repository-Detail-—-Mozilla-Firefox-300x134.png 300w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/04/2023-04-13-09_26_57-Oracle-WebLogic-Server-Repository-Detail-—-Mozilla-Firefox-768x343.png 768w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/04/2023-04-13-09_26_57-Oracle-WebLogic-Server-Repository-Detail-—-Mozilla-Firefox-1536x687.png 1536w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/04/2023-04-13-09_26_57-Oracle-WebLogic-Server-Repository-Detail-—-Mozilla-Firefox.png 2013w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<h2 class="wp-block-heading">Pulling</h2>



<p>Let&#8217;s download image of the tag <strong>14.1.1.0-11-ol8</strong>:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; title: ; notranslate">
$ docker pull container-registry.oracle.com/middleware/weblogic:14.1.1.0-11-ol8
14.1.1.0-11-ol8: Pulling from middleware/weblogic
65da81875cb9: Pull complete
91a7039d5d86: Pull complete
1bd80e398fe0: Pull complete
a3367028d133: Pull complete
7d59a6e587a1: Pull complete
48b74505173e: Pull complete
Digest: sha256:9b9032fb01aa88c381fd49f0c029289f2b1db21b4e92793ed410c3e3064909f8
Status: Downloaded newer image for container-registry.oracle.com/middleware/weblogic:14.1.1.0-11-ol8
container-registry.oracle.com/middleware/weblogic:14.1.1.0-11-ol8
$ 
</pre></div>


<p>Note that if license was not accepted, it will fail like if I was not logged in (I took Oracle Unified Directory as example):</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; title: ; notranslate">
Error response from daemon: pull access denied for container-registry.oracle.com/middleware/oud, repository does not exist or may require &#039;docker login&#039;: denied: requested access to the resource is denied
</pre></div>


<h2 class="wp-block-heading">Usage of Image</h2>



<p>To be able to start this image, I need at least to set a WebLogic console administrator. To do that, I must create a domain.properties file with following content:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
username=weblogic
password=********
</pre></div>


<p>And map current directory to /u01/oracle/properties when starting the container:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
$ docker run -d -p 7001:7001 -p 9002:9002 \
      -v $PWD:/u01/oracle/properties \
      container-registry.oracle.com/middleware/weblogic:14.1.1.0-11-ol8
</pre></div>


<p>It will take a few minutes as domain is being created. Use docker logs to check status:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
$ docker logs -f zealous_gagarin
Domain Home is:  /u01/oracle/user_projects/domains/base_domain
Create Domain

Initializing WebLogic Scripting Tool (WLST) ...

Welcome to WebLogic Server Administration Scripting Shell

Type help() for help on available commands

domain_name                 : &#x5B;base_domain]
admin_listen_port           : &#x5B;7001]
domain_path                 : &#x5B;/u01/oracle/user_projects/domains/base_domain]
production_mode             : &#x5B;prod]
admin name                  : &#x5B;AdminServer]
administration_port_enabled : &#x5B;true]
administration_port         : &#x5B;9002]
</pre></div>


<p>After a minute, you can see that it is started:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
...
&amp;lt;Apr 13, 2023, 7:47:57,260 AM Coordinated Universal Time&amp;gt; &amp;lt;Notice&amp;gt; &amp;lt;WebLogicServer&amp;gt; &amp;lt;BEA-000329&amp;gt; &amp;lt;Started the WebLogic Server Administration Server &quot;AdminServer&quot; for domain &quot;base_domain&quot; running in production mode.&amp;gt;
&amp;lt;Apr 13, 2023, 7:47:57,291 AM Coordinated Universal Time&amp;gt; &amp;lt;Notice&amp;gt; &amp;lt;WebLogicServer&amp;gt; &amp;lt;BEA-000360&amp;gt; &amp;lt;The server started in RUNNING mode.&amp;gt;
&amp;lt;Apr 13, 2023, 7:47:57,328 AM Coordinated Universal Time&amp;gt; &amp;lt;Notice&amp;gt; &amp;lt;WebLogicServer&amp;gt; &amp;lt;BEA-000365&amp;gt; &amp;lt;Server state changed to RUNNING.
</pre></div>


<h2 class="wp-block-heading">Image Customizations</h2>



<p>This will bring up an empty domain without any managed server or deployed web application. Oracle suggests extending images with a Dockerfile. Here is how it could look like:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
FROM container-registry.oracle.com/middleware/weblogic:14.1.1.0-11-ol8
COPY --chown=oracle:root container-scripts/* /u01/oracle/
WORKDIR /u01/oracle
RUN &#x5B;&quot;/u01/oracle/createAndStartEmptyDomain.sh&quot;]
</pre></div>


<p><code>createAndStartEmptyDomain.sh</code> is embedded in the image, but it could be extended with customization.</p>
<p>L’article <a href="https://www.dbi-services.com/blog/oracle-weblogic-docker-images/">Oracle WebLogic Docker Images</a> est apparu en premier sur <a href="https://www.dbi-services.com/blog">dbi Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.dbi-services.com/blog/oracle-weblogic-docker-images/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>WebLogic Monitoring in Prometheus</title>
		<link>https://www.dbi-services.com/blog/weblogic-monitoring-in-prometheus/</link>
					<comments>https://www.dbi-services.com/blog/weblogic-monitoring-in-prometheus/#comments</comments>
		
		<dc:creator><![CDATA[Middleware Team]]></dc:creator>
		<pubDate>Mon, 27 Mar 2023 09:05:43 +0000</pubDate>
				<category><![CDATA[DevOps]]></category>
		<category><![CDATA[WebLogic]]></category>
		<category><![CDATA[Monitoring]]></category>
		<category><![CDATA[Prometheus]]></category>
		<guid isPermaLink="false">https://www.dbi-services.com/blog/?p=23932</guid>

					<description><![CDATA[<p>In this blog, I will explain how to enable WebLogic monitoring in Prometheus as I did for WildFly in my previous blog. WebLogic Monitoring Exporter Oracle is providing, as open source, a Prometheus-compatible exporter in this github repo. It can be run either in a web application or as a separate process. In this blog, [&#8230;]</p>
<p>L’article <a href="https://www.dbi-services.com/blog/weblogic-monitoring-in-prometheus/">WebLogic Monitoring in Prometheus</a> est apparu en premier sur <a href="https://www.dbi-services.com/blog">dbi Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>In this blog, I will explain how to enable WebLogic monitoring in Prometheus as I did for <a href="https://www.dbi-services.com/blog/wildfly-monitoring-in-prometheus/" target="_blank" rel="noreferrer noopener">WildFly</a> in my previous <a href="https://www.dbi-services.com/blog/wildfly-monitoring-in-prometheus/" target="_blank" rel="noreferrer noopener">blog</a>.</p>



<h2 class="wp-block-heading">WebLogic Monitoring Exporter</h2>



<p>Oracle is providing, as open source, a Prometheus-compatible exporter in this <a href="https://github.com/oracle/weblogic-monitoring-exporter" target="_blank" rel="noreferrer noopener">github repo</a>. It can be run either in a web application or as a separate process. In this blog, I will focus on the web app method.</p>



<h2 class="wp-block-heading">Prepare Config File</h2>



<p>The web application must be configured with help of a config.yml file. It can be loaded from the web app URL once it has been deployed but changes will not be persistent. Nevertheless, it is a good way to fine-tune parameters.</p>



<p>Once your configuration file has been validated, you can even use the script the provide to integrate the config file into the war file so that web app is deployed directly with the right configuration.</p>



<p>Let&#8217;s take an example of the configuration file provided by Oracle (jvm.yml) with some slight&#8217;s modifications:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: yaml; title: ; notranslate">
metricsNameSnakeCase: true
queries:
- key: name
  keyName: server
  JVMRuntime:
    #prefix: jvm_
    prefix: wls_jvm_
    key: name
    values: &#x5B;heapFreeCurrent, heapFreePercent, heapSizeCurrent, heapSizeMax, uptime, processCpuLoad]
</pre></div>


<p>This file only focuses on Java Virtual Machine memory and CPU. We will use this file in next steps, but for now, we must deploy the web application.</p>



<h2 class="wp-block-heading">Deploy Web Application</h2>



<p>The deployment of <code>wls-exporter.war</code> is not different to any other web application deployments:</p>



<ol class="wp-block-list">
<li>Log into WebLogic console</li>



<li>Go in Deployments section</li>



<li>Click Lock and Edit</li>



<li>Click Install and target it to whatever server you want to monitor.</li>



<li>Once uploaded, click Activate Changes</li>



<li>Still in Deployments section, select Control tab</li>



<li>Select wls-exporter and click start Servicing all requests</li>
</ol>



<p>At this point, you should be able to open the web application http://&lt;HOSTNAME&gt;:7001/wls-exporter/</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="504" height="360" src="http://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/2023-03-27-09_07_56-Weblogic-Monitoring-Exporter-—-Mozilla-Firefox.png" alt="" class="wp-image-23967" srcset="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/2023-03-27-09_07_56-Weblogic-Monitoring-Exporter-—-Mozilla-Firefox.png 504w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/2023-03-27-09_07_56-Weblogic-Monitoring-Exporter-—-Mozilla-Firefox-300x214.png 300w" sizes="auto, (max-width: 504px) 100vw, 504px" /><figcaption class="wp-element-caption">weblogic-exporter configuration</figcaption></figure>



<p>As you can see, the <code>queries</code> section is empty, because there is no default configuration.yml file applied. If I open the metrics web page (http://&lt;HOSTNAME&gt;:7001/wls-exporter/metrics), I will not see any metric:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
# No configuration defined.
</pre></div>


<p>Let&#8217;s upload the jvm.yml file. When submitting, I can either Append or Replace configuration file. Then, we will see the running configuration:</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="454" height="201" src="http://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/2023-03-27-09_14_34-Weblogic-Monitoring-Exporter-—-Mozilla-Firefox.png" alt="" class="wp-image-23968" srcset="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/2023-03-27-09_14_34-Weblogic-Monitoring-Exporter-—-Mozilla-Firefox.png 454w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/2023-03-27-09_14_34-Weblogic-Monitoring-Exporter-—-Mozilla-Firefox-300x133.png 300w" sizes="auto, (max-width: 454px) 100vw, 454px" /></figure>



<p>When I refresh the metrics page, now I can see some metrics:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
wls_jvm_heap_free_current{server=&quot;AdminServer&quot;,name=&quot;AdminServer&quot;} 283142888
wls_jvm_heap_free_percent{server=&quot;AdminServer&quot;,name=&quot;AdminServer&quot;} 58
wls_jvm_heap_size_current{server=&quot;AdminServer&quot;,name=&quot;AdminServer&quot;} 481820672
wls_jvm_heap_size_max{server=&quot;AdminServer&quot;,name=&quot;AdminServer&quot;} 481820672
wls_jvm_process_cpu_load{server=&quot;AdminServer&quot;,name=&quot;AdminServer&quot;} 0.5
wls_jvm_uptime{server=&quot;AdminServer&quot;,name=&quot;AdminServer&quot;} 4674528
wls_scrape_mbeans_count_total{instance=&quot;192.168.33.12:7001&quot;} 6
wls_scrape_duration_seconds{instance=&quot;192.168.33.12:7001&quot;} 0.02
wls_scrape_cpu_seconds{instance=&quot;192.168.33.12:7001&quot;} 0.03
exporter_version{instance=&quot;192.168.33.12:7001&quot;,version=&quot;v2.1.2&quot;} 1
</pre></div>


<p>Now, let&#8217;s add it into Prometheus configuration.</p>



<h2 class="wp-block-heading">Prometheus Configuration</h2>



<p>Prometheus metrics are pulled from exporter, so I must declare it in <code>prometheus.yml</code> configuration file. In <code>scrap_configs</code> section of the file, I added the following lines:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: yaml; title: ; notranslate">
  - job_name: &quot;WebLogicAdmin&quot;
    metrics_path: /wls-exporter/metrics
    static_configs:
    - targets: &#x5B;&#039;192.168.33.12:7001&#039;]
      labels:
        weblogic_clusterName: &#039;Standalone&#039;
        weblogic_domainName: &#039;wls-domain&#039;
        weblogic_domainUID: &#039;wls-domain&#039;
        weblogic_serverName: &#039;admin&#039;
    basic_auth:
      username: weblogic
      password: ******
      
  - job_name: &quot;WebLogicMS&quot;
    metrics_path: /wls-exporter/metrics
    static_configs:
    - targets: &#x5B;&#039;192.168.33.12:8003&#039;]
      labels:
        weblogic_clusterName: &#039;Standalone&#039;
        weblogic_domainName: &#039;wls-domain&#039;
        weblogic_domainUID: &#039;wls-domain&#039;
        weblogic_serverName: &#039;msWS-1&#039;
    basic_auth:
      username: weblogic
      password: ******
</pre></div>


<p>Metrics are labelled so that we can use the Grafana dashboard example provided in the github repo under samples\kubernetes\end2end\dashboard. This is not the best as it is hard-coded whereas everything could be deduced from metrics labels.</p>



<p>As password is not encrypted (only base64), it is <strong>strongly </strong>recommended to use https encryption between Prometheus and WebLogic server.</p>



<h2 class="wp-block-heading">Results and Next Steps</h2>



<p>Here is how it looks in the provided Grafana dashboard:</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="487" src="http://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/2023-03-27-10_54_32-WebLogic-Server-Dashboard-Dashboards-Grafana-—-Mozilla-Firefox-1024x487.png" alt="" class="wp-image-23972" srcset="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/2023-03-27-10_54_32-WebLogic-Server-Dashboard-Dashboards-Grafana-—-Mozilla-Firefox-1024x487.png 1024w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/2023-03-27-10_54_32-WebLogic-Server-Dashboard-Dashboards-Grafana-—-Mozilla-Firefox-300x143.png 300w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/2023-03-27-10_54_32-WebLogic-Server-Dashboard-Dashboards-Grafana-—-Mozilla-Firefox-768x366.png 768w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/2023-03-27-10_54_32-WebLogic-Server-Dashboard-Dashboards-Grafana-—-Mozilla-Firefox.png 1332w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">Grafana dashboard</figcaption></figure>



<p>It looks great and it was quickly provisioned.</p>



<p>As you might have noticed &#8220;Thread Pool&#8221; panel is empty. To have it populated, we must modify exporter configuration to include threads metrics. The extra queries will look like this:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: yaml; title: ; notranslate">
- threadPoolRuntime:
    prefix: wls_threadpool_
    key: name
    values: &#x5B;executeThreadTotalCount, queueLength, stuckThreadCount, hoggingThreadCount, standbyThreadCount, executeThreads, executeThreadIdleCount]
</pre></div>


<p>&#8220;Et voilà !&#8221;:</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="666" height="271" src="http://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/2023-03-27-11_00_52-WebLogic-Server-Dashboard-Dashboards-Grafana-—-Mozilla-Firefox.png" alt="" class="wp-image-23973" srcset="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/2023-03-27-11_00_52-WebLogic-Server-Dashboard-Dashboards-Grafana-—-Mozilla-Firefox.png 666w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/03/2023-03-27-11_00_52-WebLogic-Server-Dashboard-Dashboards-Grafana-—-Mozilla-Firefox-300x122.png 300w" sizes="auto, (max-width: 666px) 100vw, 666px" /><figcaption class="wp-element-caption">Thread Pool panel</figcaption></figure>
<p>L’article <a href="https://www.dbi-services.com/blog/weblogic-monitoring-in-prometheus/">WebLogic Monitoring in Prometheus</a> est apparu en premier sur <a href="https://www.dbi-services.com/blog">dbi Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.dbi-services.com/blog/weblogic-monitoring-in-prometheus/feed/</wfw:commentRss>
			<slash:comments>4</slash:comments>
		
		
			</item>
		<item>
		<title>FRM-93131 after a brand new Oracle Fusion Middleware Forms installation</title>
		<link>https://www.dbi-services.com/blog/frm-93131-after-a-brand-new-oracle-fusion-middleware-forms-installation/</link>
					<comments>https://www.dbi-services.com/blog/frm-93131-after-a-brand-new-oracle-fusion-middleware-forms-installation/#respond</comments>
		
		<dc:creator><![CDATA[Middleware Team]]></dc:creator>
		<pubDate>Tue, 21 Feb 2023 12:30:04 +0000</pubDate>
				<category><![CDATA[Application integration & Middleware]]></category>
		<category><![CDATA[WebLogic]]></category>
		<guid isPermaLink="false">https://www.dbi-services.com/blog/?p=583</guid>

					<description><![CDATA[<p>After a brand new Fusion Middleware Forms &#38; Reports 12.2.1.4 installation, when accessing 12c forms URL: http://hostname:/forms/frmservlet The following error is raised : Doing some googling and searches on the Oracle support site, I came to the note below where it states that solution is to remove the WebLogic domain, cleanup the database repository and [&#8230;]</p>
<p>L’article <a href="https://www.dbi-services.com/blog/frm-93131-after-a-brand-new-oracle-fusion-middleware-forms-installation/">FRM-93131 after a brand new Oracle Fusion Middleware Forms installation</a> est apparu en premier sur <a href="https://www.dbi-services.com/blog">dbi Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>After a brand new Fusion Middleware Forms &amp; Reports 12.2.1.4 installation, when accessing 12c forms URL: <br>http://hostname:/forms/frmservlet <br>The following error is raised :</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
Oracle Fusion Middleware 12c Forms Services
 FRM-93131: Cannot find base HTML file basejpi.htm
 Contact your system administrator.
</pre></div>


<p>Doing some googling and searches on the Oracle support site, I came to the note below where it states that solution is to remove the WebLogic domain, cleanup the database repository and restart the repository and WebLogic domain creation from the beginning.<br>FRM-93131: Basejpi.html Not Found &#8211;&gt; Cannot Access Forms 12.2.1.2.0 (Doc ID 2199628.1)</p>



<p>I decided to take some time and see if there is not an other solution to avoid dropping the WebLogic domain and repository. After some tests I found out that the issue is due to WebLogic domain system component configuration step missed running config.sh.</p>



<p>I tried to simply update the existing WebLogic domain and run the system configuration missed step.</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
cd /u00/app/oracle/product/fmw_reports/oracle_common/common/bin/
config.sh
</pre></div>


<p>Update the existing domain selecting the WebLogic Domain of the forms and reports.</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="803" height="626" src="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/02/FRM1.png" alt="update domain" class="wp-image-22845" srcset="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/02/FRM1.png 803w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/02/FRM1-300x234.png 300w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/02/FRM1-768x599.png 768w" sizes="auto, (max-width: 803px) 100vw, 803px" /></figure>



<p>Later in the steps, select the system components</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="801" height="629" src="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/02/FRM2.png" alt="System components" class="wp-image-22846" srcset="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/02/FRM2.png 801w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/02/FRM2-300x236.png 300w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/02/FRM2-768x603.png 768w" sizes="auto, (max-width: 801px) 100vw, 801px" /></figure>



<p>Add the forms system component to the list of available system components if not already declared.</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="803" height="629" src="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/02/FRM3.png" alt="System components list" class="wp-image-22847" srcset="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/02/FRM3.png 803w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/02/FRM3-300x235.png 300w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/02/FRM3-768x602.png 768w" sizes="auto, (max-width: 803px) 100vw, 803px" /></figure>



<p>Assign the forms system component to the machine. This is the missed step during the initial configuration. </p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="800" height="626" src="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/02/FRM4.png" alt="" class="wp-image-22848" srcset="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/02/FRM4.png 800w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/02/FRM4-300x235.png 300w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/02/FRM4-768x601.png 768w" sizes="auto, (max-width: 800px) 100vw, 800px" /><figcaption class="wp-element-caption">.</figcaption></figure>



<p>Select and assign the forms component using the horizontal arrow.</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="802" height="628" src="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/02/FRM5.png" alt="forms assigned on machine" class="wp-image-22849" srcset="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/02/FRM5.png 802w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/02/FRM5-300x235.png 300w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/02/FRM5-768x601.png 768w" sizes="auto, (max-width: 802px) 100vw, 802px" /></figure>



<p>Once this step is done, go through the steps until the update button appears and click on it.</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="804" height="630" src="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/02/FRM6.png" alt="" class="wp-image-22850" srcset="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/02/FRM6.png 804w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/02/FRM6-300x235.png 300w, https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2023/02/FRM6-768x602.png 768w" sizes="auto, (max-width: 804px) 100vw, 804px" /></figure>



<p>Once the WebLogic domain has been updated, the forms component configuration on the file system is up to date and the FRM-93131 error does not raise anymore.</p>



<p>A simple update of the WebLogic Domain solved this issue !!  </p>
<p>L’article <a href="https://www.dbi-services.com/blog/frm-93131-after-a-brand-new-oracle-fusion-middleware-forms-installation/">FRM-93131 after a brand new Oracle Fusion Middleware Forms installation</a> est apparu en premier sur <a href="https://www.dbi-services.com/blog">dbi Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.dbi-services.com/blog/frm-93131-after-a-brand-new-oracle-fusion-middleware-forms-installation/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>

<!--
Performance optimized by W3 Total Cache. Learn more: https://www.boldgrid.com/w3-total-cache/?utm_source=w3tc&utm_medium=footer_comment&utm_campaign=free_plugin

Page Caching using Disk: Enhanced 
Lazy Loading (feed)

Served from: www.dbi-services.com @ 2026-06-02 07:59:19 by W3 Total Cache
-->