<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
   <channel>
      <title>Learn with Pavan</title>
      <link>http://blogs.oracle.com/learnwithpavan/</link>
      <description>Troubleshoot your applications by learning them</description>
      <language>en</language>
      <copyright>Copyright 2009</copyright>
      <lastBuildDate>Tue, 29 Sep 2009 23:06:36 +0530</lastBuildDate>
      <generator>http://www.sixapart.com/movabletype/</generator>
      <docs>http://blogs.law.harvard.edu/tech/rss</docs> 

      
      <item>
         <title>Deploy using the deploy tool utility in AIA</title>
         <description><![CDATA[One of the good utilities that can be used to deploy the BPEL/ESB is AIA deploy tool. In the BPEL and ESB projects that we create, we use the partner link locations, WSDLs and XSDs for a particular server. If we need to deploy these projects to a different server, then we need to change the locations of the WSDLs and XSDs everytime.<div><br /></div><div>Instead of doing it manually, we can use AIA Deploy tool. This utility has a tokenizer which will tokenize and change the URLs accordingly in the entire project and generates the build.xml (incase of BPEL) and deploymentplan.xml (incase of ESB). We can then run the 'ant' tool to deploy our processes to the server.</div><div><br /></div><div><div>The DeployTool is located in $AIA_HOME/util. Here are the steps to use it.</div><div><br /></div><div>1. There is a file called Tokenizer.properties which we need to populate the process directory (directory of the BPEL/ESB project). Ensure the process directory has the read/write permissions. Update the Tokenizer.properties with the following properties:</div><div><br /></div><div>a) home.dir1 -> enter the directory of the process to be deployed.</div><div>eg: home.dir1=/product/example/JMSAdapterServices/MySample</div><div><br /></div><div>b) ESB_COPY_FOLDER =/product/AIA_HOME/util/DeployTool/EsbCopy</div><div><br /></div><div>c) BPEL_COPY_PATH=product/AIA_HOME/util/DeployTool/BpelCopy</div><div><br /></div><div>2. Run the command to deploy:</div><div>$ ant <span class="Apple-style-span" style="font-weight: bold;">runesb</span> -DTokenizerPropsFilePath=/product/AIA_HOME/util/DeployTool/Tokenizer.properties</div><div><br /></div><div>$ ant <span class="Apple-style-span" style="font-weight: bold;">runbpel </span>-DTokenizerPropsFilePath=/product/AIA_HOME/util/DeployTool/Tokenizer.properties</div><div><br /></div><div>Note: Deploy tool will only create the deployment plan for ESB. It does NOT deploy the process. Once the deployment plan is generated, goto the ESB directory and run the ant tool to deploy the process.</div><div><br /></div><div>4. Goto $AIA_HOME/bin and source the AIA environment file - aiaenv.sh. This will source all the environment variables. Then run "ant" to deploy the process.</div><div><br /></div></div>]]></description>
         <link>http://blogs.oracle.com/learnwithpavan/2009/09/deploy_using_the_deploy_tool_u.html</link>
         <guid>http://blogs.oracle.com/learnwithpavan/2009/09/deploy_using_the_deploy_tool_u.html</guid>
        
          <category domain="http://www.sixapart.com/ns/types#category">Application Integration Architecture</category>
        
        
          <category domain="http://www.sixapart.com/ns/types#tag">Application Integration Architecture</category>
        
         <pubDate>Tue, 29 Sep 2009 23:06:36 +0530</pubDate>
      </item>
      
      <item>
         <title>Move AIA Home from one location to another</title>
         <description><![CDATA[<p>More often, w face this issue when preparing the DEV/TEST instances. What if we install AIA in one of the directories and what we our mount point is out of space and we want to move this directory to another location?</p><p>1. The solution is very simple. The configuration for AIA home is referred only in one location i.e., opmn.xml file. This file is located in $ORACLE_HOME/opmn/conf directory, where ORACLE_HOME is the directory location where the SOA Suite is installed.</p><p>For the oc4j_soa container, the AIA home is mentioned in the module-data element as follows:</p><p><span class="Apple-style-span" style="font-style: italic;">-Daia.home=/slot/ems1054/oracle/product/AIAHOME</span></p><p>So, if the AIA Home needs to be moved to a different location, this is one of the config files to be changed.</p><p>2. Then, in the $AIA_HOME/bin, change the locations of the directories in aiaenv.sh (aiaenv.cmd for Windows).</p><p>3. For some of the PIPs like Revenue Accounting, the AIA location is specified in the $AIA_HOME/config/AIAConfigurationProperties.xml file. So, change the locations in this file as well.</p><p>Thats it !!! Restart the SOA and everything is fine to go with new AIA Home.</p>]]></description>
         <link>http://blogs.oracle.com/learnwithpavan/2009/09/move_aia_home_from_one_locatio.html</link>
         <guid>http://blogs.oracle.com/learnwithpavan/2009/09/move_aia_home_from_one_locatio.html</guid>
        
          <category domain="http://www.sixapart.com/ns/types#category">Application Integration Architecture</category>
        
        
          <category domain="http://www.sixapart.com/ns/types#tag">AIA</category>
        
         <pubDate>Tue, 29 Sep 2009 21:24:12 +0530</pubDate>
      </item>
      
      <item>
         <title>Benefits of upgrading to Weblogic Server</title>
         <description><![CDATA[<p>There has been a mail thread on this topic in the FMW Forum and I liked the White paper on this. Couple of points from the people who replied to this:</p>

<p>In addition to being the strategic runtime for Oracle Fusion Middleware, the new product lines acquired from BEA, the Oracle Applications portfolio and the forthcoming Fusion Applications, Oracle WebLogic Server offers significant additional capabilities to the Oracle Application Server customer base beyond that which was available within Oracle Application Server including:</p>

<p>1. <strong>Runtime:</strong> Within the area of the core container, beyond the fully certified Java EE 5.0 compatibility, WebLogic Server extends the runtime in numerous areas including the Java Message Service (message ordering with unit of order, unit of work, scale out with distributed destinations and store and forward infrastructure, C and .NET JMS clients), Web services (conversational Web services, buffered Web services, asynchronous Web services, SOAP over JMS), built-in Tuxedo integration and runtime tuning (self tuning work managers) amongst others. </p>

<p>2. <strong>Development:</strong> Within the area of development capabilities above that in basic servers, WebLogic includes Java class FastSwap capabilities for fast test/debug cycles without server restarts, split development for tightly integrated IDE development, HTTP Publish/Subscribe Server for AJAX applications, filtering class loader to handle multiple versions of class libraries, Ant tasks for development, deployment and configuration automation and deep Eclipse and JDeveloper integration amongst others. </p>

<p>3. <strong>Operations and Administration:</strong> Within the area of operations and administration, WebLogic Server extends basic server capabilities in numerous areas including transactional and batch configuration, zero-downtime re-deployment, domain template builder and configuration wizard for simplified cloning, consistent scripting and command line tooling for all server configuration with WebLogic Scripting Tool, sophisticated lifecycle control over applications and the container, built in diagnostics framework amongst others. </p>

<p>4. <strong>High Availability:</strong> Within the area of high availability WebLogic Server extends basic core availability capabilities in a number of areas including clustered JNDI, whole server migration, service migration, high availability for singleton services </p>

<p>The white paper can be downloaded <a href="http://www.oracle.com/technology/products/middleware/upgrade/pdf/11GR1_JEE_UPGRADE.pdf#4">here</a>.</p>]]></description>
         <link>http://blogs.oracle.com/learnwithpavan/2009/09/benefits_of_upgrading_to_weblo.html</link>
         <guid>http://blogs.oracle.com/learnwithpavan/2009/09/benefits_of_upgrading_to_weblo.html</guid>
        
          <category domain="http://www.sixapart.com/ns/types#category">Weblogic</category>
        
        
          <category domain="http://www.sixapart.com/ns/types#tag">Weblogic</category>
        
         <pubDate>Thu, 17 Sep 2009 12:52:17 +0530</pubDate>
      </item>
      
      <item>
         <title>Increasing the logging to Weblogic Message Bridge </title>
         <description><![CDATA[<p><font style="FONT-SIZE: 1.24em"><strong>Steps to increase the logging on Weblogic 10.3.1 Message Bridge.</strong></font></p>
<p>It would be great if Weblogic too has a logging feature enablement for all the individual components in a single page as in <span class="caps">OC4J.</span> There is one Logging tab for the Domain but it doesnt help any. I have an issue in <span class="caps">JMS</span> Message Bridge but couldnt find any tab/page where I could increase/enable the logging for the Bridge.</p>
<p>After digging few Weblogic document, I found that this has to be done via the flags while WL is being started.</p>
<p>The easiest place is in the startWeblogic.cmd (startWeblogic.sh for Linux flavours). Search for the comment "START <span class="caps">WEBLOGIC</span>" and then include the debug flags in the Weblogic startup line as follows:</p>
<p>Original line:<br />echo <span><span class="caps">JAVA</span>_HOME</span>\bin\java <span><span class="caps">JAVA</span>_VM</span> <span><span class="caps">MEM</span>_ARGS</span> -Dweblogic.Name=%SERVER_NAME% -Djava.security.policy=%WL_HOME%\server\lib\weblogic.policy <span><span class="caps">JAVA</span>_OPTIONS</span> <span><span class="caps">PROXY</span>_SETTINGS</span> <span><span class="caps">SERVER</span>_CLASS</span><br /><span><span class="caps">JAVA</span>_HOME</span>\bin\java <span><span class="caps">JAVA</span>_VM</span> <span><span class="caps">MEM</span>_ARGS</span> -Dweblogic.Name=%SERVER_NAME% -Djava.security.policy=%WL_HOME%\server\lib\weblogic.policy <span><span class="caps">JAVA</span>_OPTIONS</span> <span><span class="caps">PROXY</span>_SETTINGS</span> <span><span class="caps">SERVER</span>_CLASS</span><br />)</p>
<p>Included line:<br />echo <span><span class="caps">JAVA</span>_HOME</span>\bin\java <span><span class="caps">JAVA</span>_VM</span> <span><span class="caps">MEM</span>_ARGS</span> -Dweblogic.Name=%SERVER_NAME% -Djava.security.policy=%WL_HOME%\server\lib\weblogic.policy <span><span class="caps">JAVA</span>_OPTIONS</span> <span><span class="caps">PROXY</span>_SETTINGS</span> <span><span class="caps">SERVER</span>_CLASS</span><br /><span><span class="caps">JAVA</span>_HOME</span>\bin\java <span><span class="caps">JAVA</span>_VM</span> <span><span class="caps">MEM</span>_ARGS</span> -Dweblogic.Name=%SERVER_NAME% -Djava.security.policy=%WL_HOME%\server\lib\weblogic.policy <font color="red"><em>-Dweblogic.Debug.DebugMessagingBridgeStartup=true -Dweblogic.Debug.DebugMessagingBridgeRuntime=true</em></font> <span><span class="caps">JAVA</span>_OPTIONS</span> <span><span class="caps">PROXY</span>_SETTINGS</span> <span><span class="caps">SERVER</span>_CLASS</span><br />)</p>
<p>There is an IF statement in starting Weblogic script that checks for redirection of the log file. Its in the same location as above statement. So, include the flags in the both the places.</p>
<p>Restart Weblogic and check the AdminServer.log for more information on Bridging.</p>]]></description>
         <link>http://blogs.oracle.com/learnwithpavan/2009/09/increasing_the_logging_to_webl.html</link>
         <guid>http://blogs.oracle.com/learnwithpavan/2009/09/increasing_the_logging_to_webl.html</guid>
        
          <category domain="http://www.sixapart.com/ns/types#category">Weblogic</category>
        
        
          <category domain="http://www.sixapart.com/ns/types#tag">Weblogic</category>
        
         <pubDate>Mon, 07 Sep 2009 13:54:57 +0530</pubDate>
      </item>
      
      <item>
         <title>AQ - Weblogic JMS Connectivity using Weblogic JMS Bridge</title>
         <description><![CDATA[<p>This white paper (still in draft) will help configure a JMS Bridge between AQ queues and Weblogic JMS queues. Thanks to Robert Patrick who helped me in this. It was a great learning. The configuration is pretty simple once the things are known.</p>

<p>Download the PDF - <a href="http://blogs.oracle.com/learnwithpavan/wl/files/AQ%20JMS%20-%20WL%20JMS%20-%20Bridge%20Configuration_small.pdf">here</a>. Please note that the images are not clear in this one as I have created a PDF for web. Mail me incase you need the file with clear images. Obviously, the file size in big in size.</p>]]></description>
         <link>http://blogs.oracle.com/learnwithpavan/2008/12/aq_weblogic_jms_connectivity_u.html</link>
         <guid>http://blogs.oracle.com/learnwithpavan/2008/12/aq_weblogic_jms_connectivity_u.html</guid>
        
          <category domain="http://www.sixapart.com/ns/types#category">Weblogic</category>
        
        
          <category domain="http://www.sixapart.com/ns/types#tag">AQ Weblogic JMS Bridge</category>
        
         <pubDate>Mon, 15 Dec 2008 23:44:47 +0530</pubDate>
      </item>
      
      <item>
         <title>JDeveloper 11g Production Released</title>
         <description><![CDATA[<p>I am so excited to see new <a href="http://www.oracle.com/technology/software/products/jdev/htdocs/soft11.html">JDeveloper 11g</a> production release to the public. It has got tons of new features to play with. One interesting thing is that JDeveloper 11g now has a Installer :) which came as a surprise to me. Until now, we just unzip the package, but now, we have a cool installer, ofcourse as every oracle application install, this one too is a easy ride.</p>

<p>One major change that we have in this version is that the OC4J container is removed and BEA Weblogic container is used in place of OC4J. I was hurt by this because I like OC4J more than BEA. BEA app container is also a cool product and has a stronger foundation than OC4J. Still need to explore more on this area.</p>

<p>These are the quick installer steps for installing newwwwww JDeveloper 11g Production release:</p>

<p><img alt="2.png" src="http://blogs.oracle.com/learnwithpavan/images/jdev11g/2.png" width="432" height="373" /></p>

<p><img alt="3.png" src="http://blogs.oracle.com/learnwithpavan/images/jdev11g/3.png" width="600" height="430" /></p>

<p>We can see that this installation is similar to BEA Weblogic installation. Oracle has just managed to combine both the installers (Weblogic and JDeveloper).</p>

<p><img alt="4.png" src="http://blogs.oracle.com/learnwithpavan/images/jdev11g/4.png" width="600" height="430" /></p>

<p><img alt="5.png" src="http://blogs.oracle.com/learnwithpavan/images/jdev11g/5.png" width="600" height="430" /></p>

<p><img alt="6.png" src="http://blogs.oracle.com/learnwithpavan/images/jdev11g/6.png" width="600" height="430" /></p>

<p><img alt="7.png" src="http://blogs.oracle.com/learnwithpavan/images/jdev11g/7.png" width="600" height="430" /></p>

<p><img alt="8.png" src="http://blogs.oracle.com/learnwithpavan/images/jdev11g/8.png" width="600" height="430" /></p>

<p><img alt="9.png" src="http://blogs.oracle.com/learnwithpavan/images/jdev11g/9.png" width="600" height="430" /></p>

<p><img alt="10.png" src="http://blogs.oracle.com/learnwithpavan/images/jdev11g/10.png" width="600" height="430" /></p>

<p><img alt="11.png" src="http://blogs.oracle.com/learnwithpavan/images/jdev11g/11.png" width="600" height="430" /></p>

<p><img alt="12.png" src="http://blogs.oracle.com/learnwithpavan/images/jdev11g/12.png" width="600" height="430" /></p>

<p><img alt="13.png" src="http://blogs.oracle.com/learnwithpavan/images/jdev11g/13.png" width="600" height="430" /></p>

<p><img alt="14.png" src="http://blogs.oracle.com/learnwithpavan/images/jdev11g/14.png" width="600" height="430" /></p>

<p><img alt="15.png" src="http://blogs.oracle.com/learnwithpavan/images/jdev11g/15.png" width="432" height="373" /></p>

<p><img alt="16.png" src="http://blogs.oracle.com/learnwithpavan/images/jdev11g/16.png" width="693" height="544" /></p>

<p><img alt="17.png" src="http://blogs.oracle.com/learnwithpavan/images/jdev11g/17.png" width="450" height="413" /></p>

<p><img alt="18.png" src="http://blogs.oracle.com/learnwithpavan/images/jdev11g/18.png" width="396" height="138" /></p>

<p>And NOW for the JDeveloper 11g Interface</p>

<p><img alt="1.png" src="http://blogs.oracle.com/learnwithpavan/images/jdev11g/1.png" width="900" height="600" /></p>

<p>There are tons of new features in this release and can they can be checked <a href="http://www.oracle.com/technology/products/jdev/collateral/papers/11/newfeatures/index.html">here</a>.</p>

<p>The quick tutorials can be found <a href="http://www.oracle.com/technology/products/jdev/11/cuecards/index.html">here</a>.</p>

<p>One sad thing I felt is SOA part is removed from this release. From <a href="http://www.oracle.com/technology/products/jdev/htdocs/jdeveloper11gfaq.html">FAQs</a>, I found that it will be released when SOA Suite 11g is released. </p>

<p>Sooo, until then enjoy the new JDeveloper 11g for developing ADF, Fusion and J2EE apps :)</p>]]></description>
         <link>http://blogs.oracle.com/learnwithpavan/2008/10/jdeveloper_11g_production_rele.html</link>
         <guid>http://blogs.oracle.com/learnwithpavan/2008/10/jdeveloper_11g_production_rele.html</guid>
        
          <category domain="http://www.sixapart.com/ns/types#category">General</category>
        
        
          <category domain="http://www.sixapart.com/ns/types#tag">JDeveloper 11g Editor</category>
        
         <pubDate>Wed, 22 Oct 2008 15:43:51 +0530</pubDate>
      </item>
      
      <item>
         <title>Steps to connect to Weblogic 9.2 using JMS Adapter in Oracle BPEL / ESB</title>
         <description><![CDATA[<p>Oracle JMS Adapter is a very special JMS client that can connect to any JMS server whether it is OC4J (In-memory or DB) or a 3rd-party JMS servers like Weblogic, Websphere, Tibco, MQseries or OpenJMS or any other. Once the configuration is correct, it is as simple as connecting to a local queue and producing and consuming the messages.</p>

<p>The following are steps (these are not my steps :) .. I have taken these steps from SOA Best practises document) to connect to Weblogic 9.2 using JMS Adapter in Oracle BPEL / ESB:</p>

<p>Weblogic.jar is a file, which contains almost most of the logic to connect to the Weblogic and tune the configuration of the weblogic server. The best part of Weblogic is that this file alone is enough to connect to the Weblogic and manage it.</p>

<p>1. So, first step to connect to Weblogic is to copy weblogic.jar (from <em>$WL_HOME/weblogic92/server/lib</em>, where WL_HOME is the directory where Weblogic is installed) to the <em>$SOA_ORACLE_HOME/j2ee/[instance_name]/connectors/JmsAdapter/JmsAdapter directory</em>, where SOA_ORACLE_HOME is the directory where SOA Suite is installed.</p>

<p>2. Add the following entry (connection factory properties) to oc4j-ra.xml (<em>$SOA_ORACLE_HOME/j2ee/[instance_name]/application-deployments/default/JmsAdapter</em>):</p>

<p><em>&lt;connector-factory location="[location_of_the JNDI]" connector-name="[Logical_name_of_this_connection_factory]"&gt;<br />
&lt;config-property name="connectionFactoryLocation" value="[global-jndi-name-of-your-non-XA-jmsconnectionfactory-in-weblogic]"/&gt;<br />
&lt;config-property name="factoryProperties" value="java.naming.factory.initial=weblogic.jndi.WLInitialContextFactory;java.naming.provider.url=t3://[host:port];java.naming.security.principal=[username];java.naming.security.credentials=[password]"/&lt;<br />
&lt;config-property name="acknowledgeMode" value="AUTO_ACKNOWLEDGE"/&gt;<br />
&lt;config-property name="isTopic" value="false"/&gt;<br />
&lt;config-property name="isTransacted" value="true"/&gt;<br />
&lt;config-property name="username" value=""/&gt;<br />
&lt;config-property name="password" value=""/&gt;<br />
&lt;/connector-factory&gt;</em></p>

<p><br />
Example:</p>

<p><em>&lt;connector-factory location="eis/wljms/WLQueue" connector-name="Connection_factory_2_WL"&gt;<br />
&lt;config-property name="connectionFactoryLocation" value="pvj/PvjConnectionFactory"/&gt;<br />
&lt;config-property name="factoryProperties" value="java.naming.factory.initial=weblogic.jndi.WLInitialContextFactory;java.naming.provider.url=t3://[host:port];java.naming.security.principal=[username];java.naming.security.credentials=[password]"/&lt;<br />
&lt;config-property name="acknowledgeMode" value="AUTO_ACKNOWLEDGE"/&gt;<br />
&lt;config-property name="isTopic" value="false"/&gt;<br />
&lt;config-property name="isTransacted" value="true"/&gt;<br />
&lt;config-property name="username" value=""/&gt;<br />
&lt;config-property name="password" value=""/&gt;<br />
&lt;/connector-factory&gt;</em></p>

<p>If it the end-point is a topic, then change the isTopic property to true. For queue, this property will be false.</p>

<p>Since the WebLogic Server does its authentication during JNDI InitialContext creation, we should not specify a value for the "username" and "password" config-property fields. These fields must be present and set to empty strings as shown above. The WebLogic username and password are specified only as the java naming properties as specified above.</p>

<p>Note:<br />
 <br />
a. The <em>isTransacted</em> config-property value can be set to true or false. If set to true, this tells the JMS adapter to use a JMS transacted session (which means that only JMS operations performed on this JMS session are included in a transaction). Currently, XA integration with WebLogic JMS is not currently supported.</p>

<p>b. For all WebLogic JMS versions, ensure that the JMS adapter <em>ActivationSpec</em> property <em>UseMessageListener</em> is set to false.</p>

<p>c. For enabling transactions across your BPELs/ ESBs, the <em>acknowledgeMode</em> should be set to CLIENT_ACKNOWLEDGE instead of AUTO_ACKNOWLEDGE.</p>

<p>3. WebLogic 9.x changed the JNDI client-side implementation in a way that causes OC4J JNDI lookups to fail. As a result, you must make the following changes to your Oracle<br />
SOA Suite configuration. Failure to do so generates Oracle BPEL Process Manager and Oracle ESB errors related to not finding JMS destinations and transaction errors.</p>

<p>server.xml — (<em>$SOA_ORACLE_HOME/j2ee/[instance-name]/config directory</em>) Add the property environment-naming-url-factory-enabled="true" in the server.xml configuration file for your instance for any application that includes weblogic.jar from WebLogic 9.x as follows:</p>

<p>&lt;application-server xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://xmlns.oracle.com/oracleas/schema/application-server-10_1.xsd"<br />
localhostIsAdmin="true"<br />
application-directory="../applications"<br />
check-for-updates="adminClientOnly"<br />
deployment-directory="../application-deployments"<br />
connector-directory="../connectors"<br />
<strong>environment-naming-url-factory-enabled="true"</strong><br />
schema-major-version="10" schema-minor-version="0"&gt;</p>

<p>4. The following two patches on top of 10.1.3.3 are also required for an instance that has Oracle ESB installed (whether it is being used or not):<br />
<em><li>Patch 6081699 - Giving Error For Aqjms If Environment-Naming-Url-Factory-Enabled="True" Prop Set </li><br />
<li>Patch 6316554 - Consume Functionality Of Jms Adapter For Bea Weblogic Does Not Work</li></em></p>

<p>These 4 steps are enough to connect to Weblogic JMS server using JMS Adapter. I tested it with Weblogic 9.2 and it works perfectly.</p>

<p><br />
<strong>Additional Notes:</strong></p>

<p>1. Some more points here which initially I have spent time to understand due to terminology differences J is to find out what exactly is “<em>global-jndi-name-of-your-non-XA-jmsconnectionfactory-in-weblogic</em>”</p>

<p>To know this:</p>

<p>a. Goto Weblogic console: <em>http://host:port/console</em></p>

<p>b. Under domain configuration, goto Services section and click on JMS Modules:</p>

<p><img alt="JMSAdapter1.JPG" src="http://blogs.oracle.com/learnwithpavan/images/JMSAdapter1.JPG" width="576" height="456" /></p>

<p>c. Then click on one of the available modules you have, by default, only one module will be available unless we create any or any other deployment is done.</p>

<p>d. In the Resources table, you will find the value of the JNDI name for the connection factory:</p>

<p><img alt="JMSAdapter2.JPG" src="http://blogs.oracle.com/learnwithpavan/images/JMSAdapter2.JPG" width="574" height="372" /></p>

<p>2. Now this Connection Factory has to be a NON-XA enabled as Weblogic doesn’t support XA Configuration outside Weblogic (internally it is supported). To find out, if this connection factory is XA-enabled or not, these are steps:</p>

<p>a. Click on the Connection Factory link to go to the configuration:</p>

<p><img alt="JMSAdapter3.JPG" src="http://blogs.oracle.com/learnwithpavan/images/JMSAdapter3.JPG" width="577" height="338" /></p>

<p>b. Click on the Transactions tab to check if this is XA enabled or not:</p>

<p><img alt="JMSAdapter4.JPG" src="http://blogs.oracle.com/learnwithpavan/images/JMSAdapter4.JPG" width="577" height="338" /></p>

<p>c. By default, this is checked. Uncheck this and then restart your Weblogic server to make the changes into effect.</p>

<p>Please note that if this check box is checked, JMS Adapter will NOT be able to produce / consume the messages (in 10.1.3.3, producing the messages works, but consuming doesn’t work. In 10.1.3.4, both producing the messages into WL queue and consuming from the WL queue doesn’t work).</p>

<p>To view this entry in a PDF, please click <a href="http://blogs.oracle.com/learnwithpavan/docs/Steps%20to%20connect%20to%20Weblogic%2092%20using%20JMS%20Adapter.pdf">here</a> to download the file.</p>]]></description>
         <link>http://blogs.oracle.com/learnwithpavan/2008/10/steps_to_connect_to_weblogic_9_2.html</link>
         <guid>http://blogs.oracle.com/learnwithpavan/2008/10/steps_to_connect_to_weblogic_9_2.html</guid>
        
        
         <pubDate>Tue, 07 Oct 2008 12:55:23 +0530</pubDate>
      </item>
      
      <item>
         <title>Creating a new Weblogic Domain.</title>
         <description><![CDATA[<p>Any application server need to provide a requirement to isolate the projects, contents, resources among the development teams in the dev-phase and for managability while in production stage.</p>

<p>Oracle iAS / OC4J allows the user to create a new instance of container and running them parallely (this can be done using command line as well from the Enterprise manager - will create a entry for this soon).</p>

<p>Similarly, BEA Weblogic (Oracle Weblogic I mean :) ) also provides us with a way of creating a new instance of container for managability of the code/projects/content/resources. The concept is same but the terminology is different. Weblogic calls it as <strong>domain</strong>.</p>

<p>Creating a new domain helps to isolate all the resources allocated to that new domain which also includes development environment (Weblogic calls it as Weblogic Workshop), JVM settings, physical directories, ports, projects and what not. One domain doesnt interfere with another and can parallely. Users have a choice of deploying their projects to one of the domains, except that they need to configure the settings accordingly.</p>

<p>I have an application to test on Weblogic and I have created 8 domains, and was testing my project in each of the domain with different settings. Ofcourse, my RAM is small, so I need to switch on and off the domains accordingly and at a time, 3 of them were running parallely. It really helped me to test my application in a better and faster way.</p>

<p>For the beginners or for those who are new to Weblogic, I guess this writing would help in creating a Weblogic domain as a quick reference. Also, included few issues which I encountered while running my application.</p>

<p>Please feel free to download the PDF here: <a href="http://blogs.oracle.com/learnwithpavan/mydocs/weblogic/Creating%20a%20new%20Weblogic%20Domain.pdf">Download file</a><br />
</p>]]></description>
         <link>http://blogs.oracle.com/learnwithpavan/2008/09/any_application_server_need_to.html</link>
         <guid>http://blogs.oracle.com/learnwithpavan/2008/09/any_application_server_need_to.html</guid>
        
        
         <pubDate>Mon, 29 Sep 2008 14:24:58 +0530</pubDate>
      </item>
      
      <item>
         <title>Quick Reference 1 : Client-side JAR Files required for OEMS JMS In-Memory and File-Based Lookup and Database Lookup</title>
         <description><![CDATA[<p>I am planning to write a quick reference section (QR) with all the tips for the programmers / administrators. This will help us to quickly check the list of to-do things. So, this is my first QR. </p>

<p>This is a quick reference to know what client side jar files are needed to be added in the CLASSPATH when we are trying to use JMS (in-memory/file or database) from an application client (java code or any other 3rd party JMS client). Following are the JAR files needed in the classpath:</p>

<p><strong>Client-side JAR Files Required for OEMS JMS In-Memory and File-Based Lookup:</strong></p>

<p><em>oc4jclient.jar  -- $ORACLE_HOME/j2ee/&lt;instance_name&gt;<br />
jta.jar  -- $ORACLE_HOME/j2ee/&lt;instance_name&gt;/lib <br />
jms.jar -- $ORACLE_HOME/j2ee/&lt;instance_name&gt;/lib <br />
jndi.jar -- $ORACLE_HOME/j2ee/&lt;instance_name&gt;/lib <br />
javax77.jar -- $ORACLE_HOME/j2ee/&lt;instance_name&gt;/lib <br />
optic.jar -- $ORACLE_HOME/opmn/lib</em></p>

<p>(Required only if the opmn:ormi prefix is used in Oracle Application Server environment.)</p>

<p> <br />
<strong>Client-side JAR Files Required for OEMS JMS Database Lookup:</strong></p>

<p><em>oc4jclient.jar  -- $ORACLE_HOME/j2ee/&lt;instance_name&gt;<br />
ejb.jar  -- $ORACLE_HOME/j2ee/&lt;instance_name&gt;/lib<br />
jta.jar  -- $ORACLE_HOME/j2ee/&lt;instance_name&gt;/lib<br />
jms.jar  -- $ORACLE_HOME/j2ee/&lt;instance_name&gt;/lib<br />
jndi.jar  -- $ORACLE_HOME/j2ee/&lt;instance_name&gt;/lib<br />
javax77.jar  -- $ORACLE_HOME/j2ee/&lt;instance_name&gt;/lib<br />
adminclient.jar  -- $ORACLE_HOME/j2ee/&lt;instance_name&gt;/lib<br />
ojdbc14dms.jar  -- $ORACLE_HOME/j2ee/&lt;instance_name&gt;/../../oracle/jdbc/lib<br />
dms.jar  -- $ORACLE_HOME/j2ee/&lt;instance_name&gt;/../../oracle/lib<br />
bcel.jar  -- $ORACLE_HOME/j2ee/&lt;instance_name&gt;/lib<br />
optic.jar  --  $ORACLE_HOME/opmn/lib</em></p>

<p>(Required only if the opmn:ormi prefix is used in Oracle Application Server environment.)</p>

<p><em>Note: If you cant find jndi.jar in the above specified location, then it should be there available in $ORACLE_HOME/datadirect/sun/lib directory.</em></p>

<p>This quick reference should be helpful when programming with OC4J JMS.<br />
</p>]]></description>
         <link>http://blogs.oracle.com/learnwithpavan/2008/09/quick_reference_1_clientside_j.html</link>
         <guid>http://blogs.oracle.com/learnwithpavan/2008/09/quick_reference_1_clientside_j.html</guid>
        
          <category domain="http://www.sixapart.com/ns/types#category">General</category>
        
        
         <pubDate>Fri, 12 Sep 2008 10:20:23 +0530</pubDate>
      </item>
      
      <item>
         <title>Telecommunications Setup example</title>
         <description><![CDATA[<p>This is a typical example of the telecommunications setup.</p>

<p><img alt="TelecommunicationSystems.jpg" src="http://blogs.oracle.com/learnwithpavan/images/aiacomms/TelecommunicationSystems.jpg" width="494" height="664" /></p>

<p>I will try to explain this picture. Imagine a telecommunication copmany - OraCell - wants to sell their services such as telephone services, broadband services, GSM services, VOIP services etc to their customers. In Oracell terms, all the services are called as products. But in the customers' terms, they are termed as services.</p>

<p>A CSR (Customer Service Respresentative) calls a Customer (or Customer calling the Oracell Callcenter) and enquires about a service / product. The CSR looks at all the products, describing each to the Customer, providing the choice to the customer. Customer purchases one of the product and ask the CSR to activate the same.</p>

<p>Please note that the grammer changes accordingly dependending on the product. For example, if it is a landline, purchasing a plan is different from installing the telephone physically at the customer's location. Both are different actions. Once the order is taken, and entered into the systems and amount is paid by the Customer for the installation charges, it is called fulfillment. </p>

<p>Oracell would then send a representative to the Customer's location to install the telephone, setup the appropriate equiment if needed and then activating the phone service is done. This is called provisioning of the service.</p>

<p>Incase of other services like :<br />
- GSM - selling the SIM Card and activation, <br />
- Broadband - selling the modem, setting up of the modem, issuing static/dynamic IP address and activation of the service<br />
- VOIP - Issuing VOIP phone, issuing VOIP card, activating the service</p>

<p>these actions are fulfillment and provisioning of the orders taken by the CSR.</p>

<p>Activation (Provisioning) of the service would also mean that the system will enable the number given to the customer to all the mobile towers (Antennas) so that if the customer calls, his number would be on the line and is enabled to go across different towers.</p>

<p>Once the service is activated, the CRM system (or provisioning system - depends on the setup) sends a signal to the billing system to start billing. </p>

<p>Now, say the customer starts his first call. As he dials his first number, this will first come to OraCell's PSTN. OraCell has different switches setup already for different purposes (Switches are also called Network elements in telecommunications terminology). This switch puts the customer's call to the appropriate line and then talk to the provisioning system to know the Customer's plan. It then starts recording the information such as which number Customer has dialled, how many minutes did he talk, is it STD or ISD or local number, which area he dialled etc.</p>

<p>All this information is recorded into files called as CDR (Call Data Records). This file has maximum limit. Once this is filled up, another new file is written. All such CDRs are given to a software called as Mediator(Mediation). Mediator would read all the information, remove invalid entries information and pass this information to the billing systems.</p>

<p>Billing system would generate the bill for the customer based on his service usage, then calculate the discount according to his plan and generate the final bill and update the CRM system to display it to the Customer.</p>

<p>Mediation can also send the data to InterConnect systems and Data Mining databases so that appropriate reports can be generated accordingly and then looked upon by the OraCell's management.</p>

<p>Also, fulfillment systems looks into the inventory system to check the availability and the status of the products.</p>

<p>It is very hard to make the communication between all these software pieces. The Administrator needs to know the best of the softwares and also the interfaces of those software to make them communicate to each other and pass the information between them. The development, maintainability, reliability of these softwares are high since most of the times, the company develops legacy applications for such setup. Few very companies in the market are there which markets softwares for the above components.</p>

<p>Oracle AIA communications PIPs provides the above software pieces (not all of them) and also aids the communications between these components.</p>

<p>Next time, we will see how AIA helps in such scenarios.</p>]]></description>
         <link>http://blogs.oracle.com/learnwithpavan/2008/08/telecommunications_setup_examp.html</link>
         <guid>http://blogs.oracle.com/learnwithpavan/2008/08/telecommunications_setup_examp.html</guid>
        
          <category domain="http://www.sixapart.com/ns/types#category">AIA Communications</category>
        
        
         <pubDate>Tue, 26 Aug 2008 09:22:34 +0530</pubDate>
      </item>
      
      <item>
         <title>Articles to be considered while upgrading from 10.1.3.3 to 10.1.3.4</title>
         <description><![CDATA[<p>Recently, I have upgrade my SOA from 10.1.3.3 to 10.1.3.4. Luck enough, I didnt find any issues while upgradation :) , I thought of mentioning the articles, I found to be useful to note for the upgradation. Following are the articles for a quick reference for the upgradation:</p>

<p>727068.1 - Oracle Application Server 10g Release 3 (10.1.3.4) Patch Set Notes Addendum<br />
553420.1 - How to find the latest MLR patch for BPEL/ESB 10.1.3.3<br />
730601.1 - What Documents Follow Up For Bpel 10.1.3.3.1 Installation?<br />
728366.1 - Alert Notice For SOA Customers Planning to Upgrade to 10.1.3.4</p>

<p>And this is one of the Bug which I find useful about the OPMN:</p>

<p>5964097 - OPMN PERFORMS ALWAYS A FORCEFUL SHUTDOWN IN 10.1.3.1<br />
</p>]]></description>
         <link>http://blogs.oracle.com/learnwithpavan/2008/08/articles_to_be_considered_whil.html</link>
         <guid>http://blogs.oracle.com/learnwithpavan/2008/08/articles_to_be_considered_whil.html</guid>
        
          <category domain="http://www.sixapart.com/ns/types#category">General</category>
        
        
         <pubDate>Mon, 25 Aug 2008 13:41:25 +0530</pubDate>
      </item>
      
      <item>
         <title>AIA Communications</title>
         <description><![CDATA[<p>When I heard this name for the first time, I wondered if this is something to do with the interaction of AIA components between themselves until I joined AIA group. The term 'communications' here refer to the tele-communications. And again tele-communications just doesnt stop to a telephone. It extends to all the products that come under communication exchange - like telephone (landline, mobile, gprs, gsm, 3G, 4G, VOIP etc), internet (email, fax, etc) and all such media which are used to interchange the data between the entities.</p>

<p>AIA Communications is a telecom-domain integration which is intended to help integrate different products that are involved in the telecommunications.</p>

<p>Suppose an enterprise (say Oracell Corporation) wants to setup a telecommunications business. First we need to have the infrastructure setup - all the machinery like antennas, cables, telephone systems, switches, routers etc. Ofcourse, for functioning of these hardware, we need appropriate softwares. </p>

<p>There are different softwares involved in this setup for Oracell - for eg, to list a few:<br />
a) To maintain Customers information it needs a CRM system.<br />
b) To maintain the product information, it needs a PIM system.<br />
c) To generate the bills, Billing systems are needed.<br />
d) To manage the revenues inflow and outflow, Revenue system is needed.<br />
e) To check the inventory, Inventory system (ERP) is needed.</p>

<p>Again, all these softwares are not just a single system. They involve multiple components from multiple vendors running across heterogeneous systems. Imagine the responsibility of the person / organization who maintains all these. Ofcourse, multiple persons involvement is all needed here, but the setup costs, integrating all these software pieces and making them talk to each other, and production-maintenance tasks are very high in this scenario.</p>

<p>Oracle AIA Communications provides a very easy way of integrating all these software components and reduce the costs drastically when compared to previous scenarios. AIA Communications provides out-of-the box integrations, thus, reducing the development & testing  time and costs, integration costs, elimination of 3rd party EIA softwares etc. The administrator just needs to setup the required software and configure the integration packs. AIA communication seemlessly integrates most of the software components and helps each software talk to each other in a very loosely coupled way. </p>

<p>AIA communications PIPs (Process Integration Packs) are created using the AIA framework. So, it has all the advantages that AIA and SOA has such as loose coupling between the components, platform independence, architecture independence etc.</p>

<p>In my next entry, we will see how all these softwares function together in a enterprise telecommunications setup.</p>]]></description>
         <link>http://blogs.oracle.com/learnwithpavan/2008/08/aia_communications_1.html</link>
         <guid>http://blogs.oracle.com/learnwithpavan/2008/08/aia_communications_1.html</guid>
        
          <category domain="http://www.sixapart.com/ns/types#category">AIA Communications</category>
        
        
         <pubDate>Wed, 06 Aug 2008 00:21:46 +0530</pubDate>
      </item>
      
      <item>
         <title>Oracle ESB - Designtime cache has not been initialized</title>
         <description><![CDATA[<p>Frequently, when I am logging into ESB Console - http://localhost:7777/esb - I get the following error:</p>

<p><em>Designtime cache has not been initialized Please look in logs for following signs of failure. Fix them and restart. (a) Database access errors (b) ESB Bootstrap errors (c) OC4J class load errors (d) Product installation errors (e) Export ESB params and verify if host and port parameters are correct. Please contact Oracle Support if unable to fix the issue.</em></p>

<p>I figured out that this error could be due to multiple reasons. The two most frequent mistakes which I make are:</p>

<p>1. My database / database listener are NOT started and I start the SOA suite, due to which the above error is thrown. For this, just shut down the SOA Suite, start the database, then the database listener and then start the SOA Suite and that should help.</p>

<p>2. Incorrect deployment of the RAR files. I tried to deploy few standalone Resource adapters in the wrong directory and tried to invoke the WSDLs which use the RAR files. Although successfully compiled at design time, but at runtime, after the deploying the ESBs, when my ESB server is starting, this error is thrown.<br />
                  In such cases, comment the RAR configuration in the oc4j-connectors.xml in the $ORACLE_HOME/j2ee/<OC4J_instance>/config directory and then try to restart.</p>

<p>Check the two log files (you can check other log files in the OC4J directory apart from these) to get the information, but these cover most of the error information:</p>

<p>a) $ORACLE_HOME/OracleAS/j2ee/oc4j_soa/log/coreman.log:</p>

<p>Example: <em>java.sql.SQLException: Listener refused the connection with the following error:<br />
ORA-12516, TNS:listener could not find available handler with matching protocol stack<br />
The Connection descriptor used by the client was:<br />
//localhost:1521/XE</em></p>

<p>b) $ORACLE_HOME/j2ee/oc4j_soa/log/oc4j_soa_default_group_1/oc4j/log.xml:<br />
Example: <em>  <MSG_TEXT>ESB bootstrap: Unknown error occured in constructor of ESB resource adapter</MSG_TEXT><br />
    <SUPPL_DETAIL><![CDATA[java.lang.RuntimeException: failed to get ESB_HOME: java.lang.NullPointerException<br />
	at oracle.tip.esb.configuration.ServiceBusConstants.getESBHome(Unknown Source)<br />
	at oracle.tip.esb.configuration.ServiceBusConstants.loadESBConfigs(Unknown Source)..............</em></p>

<p>Keep in mind that this error is due to incorrect setup / configuration issue and not an issue with the Product itself.</p>]]></description>
         <link>http://blogs.oracle.com/learnwithpavan/2008/08/oracle_esb_designtime_cache_ha.html</link>
         <guid>http://blogs.oracle.com/learnwithpavan/2008/08/oracle_esb_designtime_cache_ha.html</guid>
        
          <category domain="http://www.sixapart.com/ns/types#category">General</category>
        
        
         <pubDate>Tue, 05 Aug 2008 23:09:30 +0530</pubDate>
      </item>
      
      <item>
         <title>Pre-Req steps for configuring embedded SOA 11g in Jdev 11g TP4</title>
         <description><![CDATA[<p>I had an issue in configuring the JDev 11g TP4. Earlier I had JDev 11g TP3 in my database and I wanted to install / configure TP4 in my database. But when I checked the scripts, I had seen that the tables and views and queues are same as TP3. So, I thought of removing TP3. For that I had to drop the adrs_soainfra user in the database (now it is renamed to jdev_soainfra).</p>

<p>When I tried to drop the user, I got an error : The ADRS_SOAINFRA cannot be dropped as there is a dependent queue IP_OUT_queue and it needs to be dropped first.</p>

<p>So, I had dropped it and again tried to drop the user. But again same error with different queue. So, I had created the following script to drop the related queues of this user and then dropped the user as follows: </p>

<p>SQL> set serveroutput off<br />
SQL> set pages 1000<br />
SQL> set head off</p>

<p>SQL> spool dropp.sql</p>

<p>SQL> select 'exec dbms_aqadm.stop_queue( queue_name => ''ADRS_SOAINFRA.'||name||''', wait => FALSE);' from dba_queues where owner='ADRS_SOAINFRA';</p>

<p>SQL> select 'exec dbms_aqadm.drop_queue( queue_name => ''ADRS_SOAINFRA.'||name||''');' from dba_queues where owner='ADRS_SOAINFRA';</p>

<p>SQL> select 'exec dbms_aqadm.drop_queue_table(queue_table => ''ADRS_SOAINFRA.'||queue_table||''',force=>TRUE);' from dba_queues where owner='ADRS_SOAINFRA';</p>

<p>SQL> spool off</p>

<p>Now run the dropp.sql using 'SYS' user.</p>

<p>Then execute the following to create the objects in the database. Please check the usernames carefully before creating the objects:</p>

<p>$ cd $JOH\rcu\integration\soainfra\sql</p>

<p>$ sqlplus sys/ as sysdba<br />
SQL> @createuser_soainfra_oracle_all.sql jdev_soainfra SYSTEM TEMP<br />
SQL> conn jdev_soainfra/<br />
SQL> @createschema_soainfra_oracle_all.sql jdev_soainfra</p>

<p>Then configure JDEV 11g TP4:</p>

<p>1. From Tools > Preferences > Run > Select Integrated Server.</p>

<p>2. Ensure no proxy being set (if your database and jdev are in the same domain, then it is not needed).</p>

<p>3. Again from Tools > Configure SOA > enter the database details and click on Test.</p>

<p>That should work now. Enjoy the new version.<br />
</p>]]></description>
         <link>http://blogs.oracle.com/learnwithpavan/2008/08/prereq_steps_for_configuring_e.html</link>
         <guid>http://blogs.oracle.com/learnwithpavan/2008/08/prereq_steps_for_configuring_e.html</guid>
        
          <category domain="http://www.sixapart.com/ns/types#category">General</category>
        
        
         <pubDate>Tue, 05 Aug 2008 14:53:19 +0530</pubDate>
      </item>
      
      <item>
         <title>Welcome to learn with a learner</title>
         <description><![CDATA[<p>Welcome to the my Learning BLOG. As the blog name says, I hope to fill these pages with all my technical learnings, not only in E-Business Suite, but also in other areas like SOA, Siebel, Portal, OSM, J2EE and others. I would try to mainly concentrate on the troubleshooting of the applications / components (also how-to's) as I see there are already many blogs / sites which cover the basics. However, I will try to put an entry on the basics as well so that my blog is read from end-to-end perspective.</p>

<p>My intention of creating this site is to provide the help to all kind of users right from naive user to a professional with the subject areas and most importantly troubleshooting them. One most important thing is that all the articles that I am writing / written are of my own view and not necessarily reflect the views of Oracle or anyone else (There is also a disclaimer below which says this though :) ).<br />
</p>]]></description>
         <link>http://blogs.oracle.com/learnwithpavan/2008/07/welcome_to_learn_with_a_learne.html</link>
         <guid>http://blogs.oracle.com/learnwithpavan/2008/07/welcome_to_learn_with_a_learne.html</guid>
        
          <category domain="http://www.sixapart.com/ns/types#category">Introduction</category>
        
        
         <pubDate>Mon, 14 Jul 2008 21:02:03 +0530</pubDate>
      </item>
      
   </channel>
</rss>
