Tuesday, September 24, 2013

Why does sometime the Application Server connection Test Fails in JDeveloper

Normally if the configuration values are proper the Application Server connection test will give the result as "Success" for every item

But often the same connection gives the Test Results as Failed and we will not be in a position to deploy the composite.

In such situations verify the proxy settings in the JDEV and if proxy is checked, just uncheck it and restart the JDEV. This problem will disappear


Monday, September 23, 2013

Caused By: java.sql.SQLException: JDBC LLR, table verify failed for table 'DEV2_SOAINFRA.WL_LLR_ADMINSERVER', row 'JDBC LLR Domain//Server' record had unexpected value

Some times this issue appears during server startup.

In such cases just execute the following query against the SOAINFRA Schema

select * from WL_LLR_ADMINSERVER;

Check the value for RECRORDSTR column

If it is not matching to the current domain , update the value using the below sql script

update DEV2_SOAINFRA.WL_LLR_ADMINSERVER set RECORDSTR = 'health_domain//AdminServer' where  XIDSTR  = 'JDBC LLR Domain//Server';

commit;

Another way is :

Goto  <MiddlewareHome>\user_projects\domains\<your_domain>\config

and remove the following section from the config.xml file

  <jdbc-system-resource>
    <name>wlsbjmsrpDataSource</name>
    <target>AdminServer,osb_server1</target>
    <descriptor-file-name>jdbc/wlsbjmsrpDataSource-jdbc.xml</descriptor-file-name>
  </jdbc-system-resource>

Thursday, August 8, 2013

Out of Memory Error while starting Weblogic Server on Windows 7 64 bit with JVM 64 Bit



To solve out of memory error on Windows 7 64 bit platform, ensure the following

Open  <WL_HOME>\common\bin\commEnv.cmd

set  JAVA_HOME=<64 bit JDK Home>

set  JAVA_VENDOR=Oracle

set JAVA_USE_64BIT=true

Save the commEnv.cmd

Open domain\bin\setSOADomainEnv.cmd

Set the memory options as follows

set JAVA_OPTIONS=%JAVA_OPTIONS%
set DEFAULT_MEM_ARGS=-Xms1024m -Xmx2048m -XX:MaxPermSize=1024m -XX:CompileThreshold=8000
set PORT_MEM_ARGS=-Xms1024m -Xmx2048m -XX:MaxPermSize=1024m -XX:CompileThreshold=8000

if "%JAVA_VENDOR%" == "Oracle" goto OracleJVM
set DEFAULT_MEM_ARGS=%DEFAULT_MEM_ARGS% -XX:PermSize=512m -XX:MaxPermSize=1024m
set PORT_MEM_ARGS=%PORT_MEM_ARGS% -XX:PermSize=512m -XX:MaxPermSize=1024m


Save setSOADomainEnv.cmd

Restart the server

Thursday, July 11, 2013

JAVA: The filename, directory name, or volume label syntax is incorrect

While doing file copy operation using java, if we come across an error saying

"The filename, directory name, or volume label syntax is incorrect"

then check the source filename which we are trying to copy and ensure there is no white space before or after the filename.

Better to use fileName.trim() before trying to copy

Wednesday, July 10, 2013

B2B : java.lang.UnsatisfiedLinkError: com.edifecs.xengine.xeobjects.XEHelper.createSourceFromBLOBNative

If B2B transaction is failed , check the server logs, and if the below error is found, then it is an issue with loading the native library for XEEngine

java.lang.UnsatisfiedLinkError: com.edifecs.xengine.xeobjects.XEHelper.createSourceFromBLOBNative(Ljava/lang/String;[BLjava/lang/String;)Lcom/edifecs/xengine/xeobjects/XESource;    

To solve this issue, do the following steps

1) set the library path in setSOADomainEnv.cmd as follows
set JAVA_OPTIONS=%JAVA_OPTIONS% -Djava.library.path=<middlewarehome>\Oracle_SOA1\soa\thirdparty\edifecs\XEngine\bin

2) copy the wlntio.dll from <middlewarehome>\wlserver_10.3\server\native\win\x64  to <middlewarehome>\Oracle_SOA1\soa\thirdparty\edifecs\XEngine\bin

3) copy the wlntio.dll from <middlewarehome>\wlserver_10.3\server\native\win\x64  to <JAVAHOME>\bin

also ensure the following properties are set setSOADomainEnv.cmd
set XENGINE_DIR=" <middlewarehome>\Oracle_SOA1\soa\thirdparty\edifecs\XEngine"
set PATH=%PATH%; <middlewarehome>\Oracle_SOA1\soa\thirdparty\edifecs\XEngine\bin

Restart both Admin and ManagedServer . Ensure you have run the script setSOADomainEnv.cmd before restarting the server

Tuesday, July 2, 2013

How to get the list of partitions of em using java - SOA 11g



The following java code will  get all the partitions available in em


public static ArrayList getPartitions(String host,String port,String username,String password) throws Exception
{
 System.out.println("Trying list all partitions in "+host);
  ArrayList partitions = new ArrayList();
    boolean found = false;

String contextFactory = "weblogic.jndi.WLInitialContextFactory";

String mbeanRuntime = "weblogic.management.mbeanservers.runtime";
String jmxProtoProviderPackages = "weblogic.management.remote";

String mBeanNamePartition = "oracle.soa.config:Application=soa-infra,j2eeType=FolderLifecycleConfig,name=soa-infra";
MBeanServerConnection mbsc = TestComposite.getMbeanServerConnection(host, port, username, password,mbeanRuntime,jmxProtoProviderPackages);


ObjectName mbeanpartition = new ObjectName(mBeanNamePartition);

Object FolderArray = mbsc.getAttribute(mbeanpartition, "Folders");
System.out.println("FolderArray ="+FolderArray);
Folder[] folderData = (Folder[]) FolderArray;
for (int i = 0; i < folderData.length; i++) {
System.out.println("Folder Data"+folderData[i].getName());
partitions.add(folderData[i].getName());
}


System.out.println("partitions size"+partitions.size());
return partitions;

}

Server is Running in Development Mode and Native Library(terminalio) to read the password se curely from commandline is not found

In case we encounter this type of error, in the setSOADomainEnv.cmd add an additional attribute (-Dweblogic.management.allowPasswordEcho=true) to the the JAVA_OPTIONS as shown below

set JAVA_OPTIONS=%JAVA_OPTIONS% -Dweblogic.management.allowPasswordEcho=true


Now , open a new command prompt and run the setSOADomainEnv.cmd.

Then start the server from the command prompt.



In case of unix system,

edit the   setSOADomainEnv.sh  as shown below

export JAVA_OPTIONS="$JAVA_OPTIONS -Dweblogic.management.allowPasswordEcho=true"