Advertisements

Posts Tagged 'OSB11g'

Database Polling in OSB – Part III

In this post, we will have a look at another typical use case of polling DB View using DB adapter before proceeding to other polling strategies.

As we know, DB view restricts the update if it’s based on multiple tables so we would not be able to use ‘Logical Delete’ polling strategy in it’s original fashion. To overcome this, one of the common techniques is that use ‘Delete’ polling strategy and override the default delete query with update. This technique is well known among BPEL 10g developers.

For this post also, our use case remains same where we poll using DB view EMP_DETAILS_VIEW instead of table and inserts only active employees (ISACTIVE flag is Y).

DB View Definition:

SELECT e.employee_id, e.job_id, e.manager_id,
    e.department_id, e.isactive, d.location_id,
    l.country_id, e.first_name, e.last_name,
    e.salary, e.commission_pct, d.department_name,
    j.job_title, l.city, l.state_province,
    c.country_name, r.region_name
  FROM employees e, departments d,
    jobs j, locations l,
    countries c, regions r
  WHERE e.department_id = d.department_id
  AND d.location_id     = l.location_id
  AND l.country_id      = c.country_id
  AND c.region_id       = r.region_id
  AND j.job_id          = e.job_id;

Re-create DB adapter related files for polling using this DB view in JDeveloper and import them into OSB project as shown below.

dbview

PollStartegy

PollOptions

isactive

wherecondn

OSBImport

After importing into OSB project, open the mappings.xml file and override the delete query to perform the update as shown below.

override

Create new proxy service from JCA file and add message flow similar to previous scenarios to call business service that inserts data into target table.

msgflow

Deploy the jar file to OSB server and disable other proxy services except the recent one that we created, so that only one proxy service will be populating our target table. Update the ISACTIVE flag to Y in EMPLOYEES table.

Before polling:

beforeinview

beforetargettbl

After polling:

aftertblview

aftertargettbl

From the above screenshots, we can observe that ISACTIVE flag is set to N after polling the records from the DB view and also populated our target table as expected. The updated jar file can be found in the same location as given in previous posts.

Advertisements

Database Polling in OSB – Part II

Before proceeding to other polling strategies, we will look at effect of MaxTransactionSize and MaxRaiseSize parameter values in the JCA file. This post assumes the reader has the basic understanding of OSB log activity.

jcaparams

MaxTransactionSize determines number of records to be polled in each transaction and MaxRaiseSize determines batch size i.e. the number of records to be processed in a single XML document. In BPEL, we can observe this behavior clearly as number of BPEL instances will be created with each instance processing the number of records as indicated by MaxRaiseSize. Since OSB is stateless no instances will be created. So we apply simple technique using OSB log activity to observe this behavior.

Consider value 4 as MaxTransactionSize and 2 as MaxRaiseSize. These values can be directly modified in JCA file (see above screenshot) or in the proxy service directly by unchecking option ‘Always use configuration from JCA file’. I recommend modifying JCA file as these changes would be directly used by proxy service and will not create any confusion when JCA file is further modified by DB adapter wizard at later stages during maintenance.

proxyjcamodify

So modify the parameter values as shown below.

ModifyParaminJCA

Now modify the proxy service message flow to include a log activity as shown below to log the payload before the request is routed to business service.

logactivity

Deploy the project and inserts 4 rows in the source table to observe the behavior from the logs. The following is the log for the AdminServer.log file stored at location <DOMAIN_HOME>\servers\AdminServer\logs. From the log it’s clearly visible that 4 records have been processed in 2 attempts by OSB consists of 2 records in each time. We can observe the behavior from logs by modifying MaxRaiseSize to different values like 1, 3 etc..

####<Apr 9, 2013 5:26:49 PM IST> <Error> <ALSB Logging> <SVGONUGU-LAP> <AdminServer> <[ACTIVE] ExecuteThread: ’25’ for queue: ‘weblogic.kernel.Default (self-tuning)’> <<anonymous>> <BEA1-313CB0682087E97D79BE> <361a19a2fa60e1ab:7e5f3ca6:13ded702d81:-8000-0000000000006661> <1365508609568> <BEA-000000> < [RouteNode1, null, null, REQUEST] <pol:SiEmployeeCollection xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:pol="http://xmlns.oracle.com/pcbpel/adapter/db/top/PollDB">
  <pol:SiEmployee>
    <pol:employeeId>100</pol:employeeId>
    <pol:firstName>Steven</pol:firstName>
    <pol:lastName>King</pol:lastName>
    <pol:email>SKING</pol:email>
    <pol:phoneNumber>515.123.4567</pol:phoneNumber>
    <pol:hireDate>2003-06-17T00:00:00.000+05:30</pol:hireDate>
    <pol:jobId>AD_PRES</pol:jobId>
    <pol:salary>24000</pol:salary>
    <pol:commissionPct xsi:nil="true"/>
    <pol:managerId xsi:nil="true"/>
    <pol:isactive>Y</pol:isactive>
  </pol:SiEmployee>
  <pol:SiEmployee>
    <pol:employeeId>101</pol:employeeId>
    <pol:firstName>Neena</pol:firstName>
    <pol:lastName>Kochhar</pol:lastName>
    <pol:email>NKOCHHAR</pol:email>
    <pol:phoneNumber>515.123.4568</pol:phoneNumber>
    <pol:hireDate>2005-09-21T00:00:00.000+05:30</pol:hireDate>
    <pol:jobId>AD_VP</pol:jobId>
    <pol:salary>17000</pol:salary>
    <pol:commissionPct xsi:nil="true"/>
    <pol:managerId>100</pol:managerId>
    <pol:isactive>Y</pol:isactive>
  </pol:SiEmployee>
</pol:SiEmployeeCollection>>
####<Apr 9, 2013 5:26:49 PM IST> <Info> <JCA_FRAMEWORK_AND_ADAPTER> <SVGONUGU-LAP> <AdminServer> <[ACTIVE] ExecuteThread: ’25’ for queue: ‘weblogic.kernel.Default (self-tuning)’> <<anonymous>> <BEA1-313CB0682087E97D79BE> <361a19a2fa60e1ab:7e5f3ca6:13ded702d81:-8000-0000000000006661> <1365508609647> <BEA-000000> <servicebus:/WSDL/OSBPollingDB/BusinessService/insert [ {
http://xmlns.oracle.com/pcbpel/adapter/db/BlogWS/OSBPollingDB/insert}insert_ptt ]: Using JCA Connection Pool – max size = <unbounded>>
####<Apr 9, 2013 5:26:49 PM IST> <Info> <Common> <SVGONUGU-LAP> <AdminServer> <[ACTIVE] ExecuteThread: ’25’ for queue: ‘weblogic.kernel.Default (self-tuning)’> <<anonymous>> <BEA1-313CB0682087E97D79BE> <361a19a2fa60e1ab:7e5f3ca6:13ded702d81:-8000-0000000000006661> <1365508609689> <BEA-000628> <Created "1" resources for pool "eis/DB/LocalDBHR", out of which "1" are available and "0" are unavailable.>
####<Apr 9, 2013 5:26:49 PM IST> <Info> <JCA_FRAMEWORK_AND_ADAPTER> <SVGONUGU-LAP> <AdminServer> <[ACTIVE] ExecuteThread: ’25’ for queue: ‘weblogic.kernel.Default (self-tuning)’> <<anonymous>> <BEA1-313CB0682087E97D79BE> <361a19a2fa60e1ab:7e5f3ca6:13ded702d81:-8000-0000000000006661> <1365508609701> <BEA-000000> <<oracle.tip.adapter.db.DBAdapterConstants getUniqueProcessIdentifier> Unique process identifier will be _393083366_393083366
>
####<Apr 9, 2013 5:26:49 PM IST> <Info> <JCA_FRAMEWORK_AND_ADAPTER> <SVGONUGU-LAP> <AdminServer> <[ACTIVE] ExecuteThread: ’25’ for queue: ‘weblogic.kernel.Default (self-tuning)’> <<anonymous>> <BEA1-313CB0682087E97D79BE> <361a19a2fa60e1ab:7e5f3ca6:13ded702d81:-8000-0000000000006661> <1365508609710> <BEA-000000> <<oracle.tip.adapter.db.ox.TopLinkXMLProjectInitializer initialize> Initializing toplink project for use by the database adapter.
>
####<Apr 9, 2013 5:26:49 PM IST> <Error> <ALSB Logging> <SVGONUGU-LAP> <AdminServer> <[ACTIVE] ExecuteThread: ’25’ for queue: ‘weblogic.kernel.Default (self-tuning)’> <<anonymous>> <BEA1-313CB0682087E97D79BE> <361a19a2fa60e1ab:7e5f3ca6:13ded702d81:-8000-0000000000006661> <1365508609823> <BEA-000000> < [RouteNode1, null, null, REQUEST] <pol:SiEmployeeCollection xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance" xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:pol="http://xmlns.oracle.com/pcbpel/adapter/db/top/PollDB">
  <pol:SiEmployee>
    <pol:employeeId>102</pol:employeeId>
    <pol:firstName>Lex</pol:firstName>
    <pol:lastName>De Haan</pol:lastName>
    <pol:email>LDEHAAN</pol:email>
    <pol:phoneNumber>515.123.4569</pol:phoneNumber>
    <pol:hireDate>2001-01-13T00:00:00.000+05:30</pol:hireDate>
    <pol:jobId>AD_VP</pol:jobId>
    <pol:salary>17000</pol:salary>
    <pol:commissionPct xsi:nil="true"/>
    <pol:managerId>100</pol:managerId>
    <pol:isactive>Y</pol:isactive>
  </pol:SiEmployee>
  <pol:SiEmployee>
    <pol:employeeId>103</pol:employeeId>
    <pol:firstName>Alexander</pol:firstName>
    <pol:lastName>Hunold</pol:lastName>
    <pol:email>AHUNOLD</pol:email>
    <pol:phoneNumber>590.423.4567</pol:phoneNumber>
    <pol:hireDate>2006-01-03T00:00:00.000+05:30</pol:hireDate>
    <pol:jobId>IT_PROG</pol:jobId>
    <pol:salary>9000</pol:salary>
    <pol:commissionPct xsi:nil="true"/>
    <pol:managerId>102</pol:managerId>
    <pol:isactive>Y</pol:isactive>
  </pol:SiEmployee>
</pol:SiEmployeeCollection>>

Now insert 5 rows into the source table and observe the logs which are given below:

####<Apr 10, 2013 1:58:27 PM IST> <Error> <ALSB Logging> <SVGONUGU-LAP> <AdminServer> <[ACTIVE] ExecuteThread: ‘3’ for queue: ‘weblogic.kernel.Default (self-tuning)’> <<anonymous>> <BEA1-320F158CE2D2E97D79BE> <361a19a2fa60e1ab:7e5f3ca6:13ded702d81:-8000-000000000000dd83> <1365582507415> <BEA-000000> < [RouteNode1, null, null, REQUEST] <pol:SiEmployeeCollection xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:pol="http://xmlns.oracle.com/pcbpel/adapter/db/top/PollDB">
  <pol:SiEmployee>
    <pol:employeeId>100</pol:employeeId>
    <pol:firstName>Steven</pol:firstName>
    <pol:lastName>King</pol:lastName>
    <pol:email>SKING</pol:email>
    <pol:phoneNumber>515.123.4567</pol:phoneNumber>
    <pol:hireDate>2003-06-17T00:00:00.000+05:30</pol:hireDate>
    <pol:jobId>AD_PRES</pol:jobId>
    <pol:salary>24000</pol:salary>
    <pol:commissionPct xsi:nil="true"/>
    <pol:managerId xsi:nil="true"/>
    <pol:isactive>Y</pol:isactive>
  </pol:SiEmployee>
  <pol:SiEmployee>
    <pol:employeeId>101</pol:employeeId>
    <pol:firstName>Neena</pol:firstName>
    <pol:lastName>Kochhar</pol:lastName>
    <pol:email>NKOCHHAR</pol:email>
    <pol:phoneNumber>515.123.4568</pol:phoneNumber>
    <pol:hireDate>2005-09-21T00:00:00.000+05:30</pol:hireDate>
    <pol:jobId>AD_VP</pol:jobId>
    <pol:salary>17000</pol:salary>
    <pol:commissionPct xsi:nil="true"/>
    <pol:managerId>100</pol:managerId>
    <pol:isactive>Y</pol:isactive>
  </pol:SiEmployee>
</pol:SiEmployeeCollection>>
####<Apr 10, 2013 1:58:27 PM IST> <Error> <ALSB Logging> <SVGONUGU-LAP> <AdminServer> <[ACTIVE] ExecuteThread: ‘3’ for queue: ‘weblogic.kernel.Default (self-tuning)’> <<anonymous>> <BEA1-320F158CE2D2E97D79BE> <361a19a2fa60e1ab:7e5f3ca6:13ded702d81:-8000-000000000000dd83> <1365582507450> <BEA-000000> < [RouteNode1, null, null, REQUEST] <pol:SiEmployeeCollection xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance" xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:pol="http://xmlns.oracle.com/pcbpel/adapter/db/top/PollDB">
  <pol:SiEmployee>
    <pol:employeeId>102</pol:employeeId>
    <pol:firstName>Lex</pol:firstName>
    <pol:lastName>De Haan</pol:lastName>
    <pol:email>LDEHAAN</pol:email>
    <pol:phoneNumber>515.123.4569</pol:phoneNumber>
    <pol:hireDate>2001-01-13T00:00:00.000+05:30</pol:hireDate>
    <pol:jobId>AD_VP</pol:jobId>
    <pol:salary>17000</pol:salary>
    <pol:commissionPct xsi:nil="true"/>
    <pol:managerId>100</pol:managerId>
    <pol:isactive>Y</pol:isactive>
  </pol:SiEmployee>
  <pol:SiEmployee>
    <pol:employeeId>103</pol:employeeId>
    <pol:firstName>Alexander</pol:firstName>
    <pol:lastName>Hunold</pol:lastName>
    <pol:email>AHUNOLD</pol:email>
    <pol:phoneNumber>590.423.4567</pol:phoneNumber>
    <pol:hireDate>2006-01-03T00:00:00.000+05:30</pol:hireDate>
    <pol:jobId>IT_PROG</pol:jobId>
    <pol:salary>9000</pol:salary>
    <pol:commissionPct xsi:nil="true"/>
    <pol:managerId>102</pol:managerId>
    <pol:isactive>Y</pol:isactive>
  </pol:SiEmployee>
</pol:SiEmployeeCollection>>
####<Apr 10, 2013 1:58:27 PM IST> <Error> <ALSB Logging> <SVGONUGU-LAP> <AdminServer> <[ACTIVE] ExecuteThread: ‘3’ for queue: ‘weblogic.kernel.Default (self-tuning)’> <<anonymous>> <BEA1-3211158CE2D2E97D79BE> <361a19a2fa60e1ab:7e5f3ca6:13ded702d81:-8000-000000000000dd83> <1365582507526> <BEA-000000> < [RouteNode1, null, null, REQUEST] <pol:SiEmployeeCollection xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance" xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:pol="http://xmlns.oracle.com/pcbpel/adapter/db/top/PollDB">
  <pol:SiEmployee>
    <pol:employeeId>104</pol:employeeId>
    <pol:firstName>Bruce</pol:firstName>
    <pol:lastName>Ernst</pol:lastName>
    <pol:email>BERNST</pol:email>
    <pol:phoneNumber>590.423.4568</pol:phoneNumber>
    <pol:hireDate>2007-05-21T00:00:00.000+05:30</pol:hireDate>
    <pol:jobId>IT_PROG</pol:jobId>
    <pol:salary>6000</pol:salary>
    <pol:commissionPct xsi:nil="true"/>
    <pol:managerId>103</pol:managerId>
    <pol:isactive>Y</pol:isactive>
  </pol:SiEmployee>
</pol:SiEmployeeCollection>>

If we observe the logs, all the 5 rows have been picked up rather than 4 as mentioned by MaxTransactionSize parameter. This behavior is documented in DB Adapter documentation mentioning “If distributed polling is not set, then the adapter tries to process all unprocessed rows in a single polling interval”.

As FYI, distributed polling is an option at DB adapter level as shown below. Also observe polling SQL when distributed polling option is used.

distpolling

The OSB configuration jar can be downloaded from here.

OSB 11g book published..

OSB 11g Development cookbook authored by Guido Schmutz, Edwin Biemond , Jan van Zoggel , Mischa Kölliker , Eric Elzingam is available  at http://www.packtpub.com/oracle-service-bus-11g-development-cookbook/book

Using Repository Creation Utility (RCU)

This post is in continuation to the previous post that talked out the OSB installation and setup of Dev environment  in Eclipse IDE. In this post, we will see the database dependency of OSB.

Much of the functionality provided with Oracle Service Bus (OSB) does not have any database dependency. Refer to the oracle blog post here that talks about the same. But there are 2 reasons why we need to look into database as well:

  • OSB Reporting functionality which is provided as one of the service monitoring features, needs database tables to store reporting data. By default, derby internal database is used for this purpose or we can configure to use any other schema during WLS domain creation.
  • And one of the major features included in OSB11g is integration with the Oracle Web Services Manager (OWSM). OWSM provides policy based security solution to secure the proxy services. These out of the box OWSM policies are provided in the metadata store (MDS) that requires a database. Refer to this link for more information on OWSM and FAQs at this link.

These required schemas can be installed into database using repository creation utility provided by oracle. Since we are using OSB11g (11.1.1.3) download the RCU 11.1.1.3.3 from think link. Different schemas that can be created using RCU can be found here. Since we are planning to use OWSM with our OSB installation, we will see  how to install this MDS using RCU.

If we want to use Oracle XE as a database, then we should update the database parameters once after the installation. Set the processes parameter to >=200 using the following instructions.
sqlplus sys/<your password>@XE as sysdba

SQL> show parameter session
SQL> show parameter processes
SQL> alter system reset sessions scope=spfile sid=’*’;
SQL> alter system set processes=200 scope=spfile;
SQL> shutdown immediate
SQL> startup
SQL> show parameter session
SQL> show parameter processes

Unzip the downloaded RCU zip file to any folder in the file system and call this as $RCUHOME. Run the file $RCUHOME/rcuHome/rcu.bat that brings up the below screen with options Create and Drop. We can use same utility to drop the existing schemas as well.

          image

Click on Next to bring up the next screen and give the installed database details.

           image

Click on Next. At this stage the database compatibility check will happen and the following error will be shown if the database is incompatible. As we can the database version should be equal to or higher than 10.2.0.4.0 in 10g or 11.1.0.7.0 in 11g.

            image

If the compatibility check is successful, we will get the following screen with successful message after checking the prerequisites.

            image

Click OK on check prerequisites and proceed to next screen where different schema components can be selected. Give the new prefix as DEV (or some other value you are comfortable with) and select metadata services if we just want OWSM. And select SOA Infrastructure component if you are planning to install SOA Suite as well. So select all these and observe the schema owner column.

            image

Click Next and click on OK, once another prerequisites step is also over. Proceed to the next screen where we can mention the password for each schema that we want to create. Based on preference, we can give the same password to all the schemas or different password for each different schema.

            image

Click on Next and where we can create the required tablespaces for all the schemas that we selected including default and temporary table spaces. We can click on Manage tablespaces if we want to modify any of the default properties.

             image

Click on Next and click on OK in the popup that comes up to create all the tablesapces as mentioned in the previous step. Click on Create in this screen to create all the table spaces.

             image

Once everything is successfully completed, we can see the following screen with completion details.

             image

To verify the successful schema installation, we can go to sql plus screen and login with the respective schema user name and password. For example, the following screen shows the login is successful to DEV_MDS schema and also able to see all the tables.

             image

Oracle Service Bus 11g (OSB) Installation

Back again, after a long long long time!!! Lot of things happened over this period and i got into completely different technology i.e. Oracle Fusion Middleware. Currently working on Oracle Service Bus(OSB) and BPEL, so thought of sharing whatever i had learnt and learning.

This post talks about the OSB 11g installation that i tried in my Windows 7 machine. Oracle has got this product into their kitty after BEA acquisition, which was known as Aqua Logic Service Bus (ALSB) earlier. After the acquisition of BEA, Oracle had rebranded ALSB as Oracle Service Bus (OSB). OSB 10.3 is the initial and official release (in 2008) by Oracle. The next version of OSB 11g (11.1.1.3) is released in the last year and the latest release of OSB is 11.1.1.4 released before 2 or 3 weeks.

The following are the prerequisites for OSB11g installation:

  • WebLogic Server 10.3.3
  • 64-bit JDK – If we are using generic installer for WLS
  • Oracle Enterprise Pack for Eclipse (OEPE)
  • Repository Creation Utility (RCU) – If we want to create domain with OWSM extension

WebLogic Server (WLS) Installation:

The WLS 10.3.3 can be downloaded from this link. In this link, we can see the installers for 32-bit JVM for both windows and Linux and also a generic installer. If you are using 32-bit machines download and install the exe “Oracle WebLogic Server 11gR1 (10.3.3) + Coherence + OEPE – Package Installer”, that contains WLS and OEPE. For 64-bit machines download the generic installer.

We will go through the installation with the use of some screenshots:

1) Click on the jar file download that brings up the following screen.

                      wls1

2) Click on Next to create a new middleware home by entering the location

                     wls2 

3) Click on Next twice and choose the install type as Typical and proceed to JDK selection screen.

                     wls3 

4) The generic installer does not ship with any JDK as you see in above screenshot, so install the 64 bit JDK from this link and select this location for local JDK. Click on Next till the final screen of the installation process and you will see the following screen once the installation is completed.

                    wls4

OEPE Installation:

Since generic installer of WLS does not have the OEPE, we have to install the OEPE separately. Download OEPE of Galileo version from this link for 64-bit platform and unzip this in the same location as middleware home  as shown below:

                    oepe1

OSB 11g Installation:

We will see how to install the RCU in next post and will proceed with the installation of OSB 11g. Download OSB 11.1.1.3 from the link, unzip it and click setup.exe in Disk folder that brings up the following screen and enter the 64-bit JDK location.

                    osb1

1) Click on Next that brings up the following screen. Here you can observe that WLS and OEPE are prerequisites for OSB development. Since we already installed these, proceed to next step by clicking on the Next.

                    osb3

2) In the next screen, Select the install type as ‘Typical’ and click on Next twice that brings up the following screen, where we need to specify the Middleware home along with the locations of WLS and OEPE. These locations will be defaulted on choosing the middleware home, otherwise browse the locations manually.

                     osb4

3) Click on Next to review the install summary and click on Install. The following Installation Completed screen will come up once the installation is done successfully.

                     osb5

With this, we are finished with the OSB installation.

The development platform for OSB is Eclipse. To verify the OSB related plug-ins installation, open Eclipse and select Help –> About Eclipse Platform. The last two icons as shown in the below screenshot indicates that OSB related plug-ins are installed and Eclipse is ready for the OSB services development.

                      eclipse1

Notes:

Though OSB is installed successfully, sometimes the OSB related plug-ins will not be visible in Eclipse IDE. To resolve this issue, try reinstalling OSB again and also make sure that the file ‘oracle.osb.ide.link’ has the entry pointing to your OSB installation directory like  path=C:/Oracle/Middleware/Oracle_OSB1 and the file can be found in the location $MW_HOME/<<OEPE Install dir>>/dropins.

OSB 11.1.1.6 Update:

Recently installed OSB 11.1.1.6 in windows 7 OS and found that some of the links mentioned above are no longer valid. So furnishing the same for user reference below:

JDK Download (JDK6 is certified for OEPE use): http://www.oracle.com/technetwork/java/javase/downloads/index.html

OEPE Download:

http://www.oracle.com/technetwork/developer-tools/eclipse/downloads/index.html

http://www.oracle.com/technetwork/developer-tools/eclipse/downloads/oepe-archive-1716547.html

And for the compatible OEPE you can have a look at the post.

Latest SOA Suite Download:

http://www.oracle.com/technetwork/middleware/soasuite/downloads/index.html

And another difference I found during the OSB installation is invoking the setup.exe file. I had to click the setup.exe file located in Disk1\install\win64 (after unzip) to bring the screen to enter JDK location as shown in the above screenshots.

Issue in opening Eclipse:

If you come across the error saying ‘Unable to locate Java SE Environment’, make sure that correct javaw.exe file is being referenced to invoke the eclipse. Otherwise, add the following in the properties of the shortcut which is javaw location in your machine.

-vm "C:\Program Files\Java\jdk1.6.0_41\bin\javaw.exe"


Advertisements

Pages

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Join 374 other followers

Enter your email address to follow this blog and receive notifications of new posts by email.

Advertisements