Snapped Shot

Always Watching the All-Seeing Eye

 

Ye Tech: Working with Oracle Internet Directory... on a Mac!

The Sweet Smell of Success!
To my regular readers, my apologies. I'm trying to collect my thoughts in writing so that I have a greater chance of remembering them down the road. If you're not someone who generally works with Oracle products, feel free to gloss over this one, as it's probably going to be dullsville.

Do you use OracleAS in your workplace? Have you ever gotten tired of trying to administer Oracle Internet Directory from within a Windows or Linux virtual machine? Ever wish you could give up the headaches of trying to boot up an environment to run OID Administrator in, and just run it right on your Mac?

In other words, does it feel like you're spending more time waiting for the system to start than you are actually performing administrative tasks?

Yeah, feels like that to me, too. Fortunately for both of us, it is possible to run the Java-powered OID Administration console from Mac OS X. Follow along with this easy 200-step process, and you'll be able to do it, too!
You're still around for the ride? Awesome! Here's how I did it:

Step 1: Download Oracle10g Client for Mac OS X.

Go here, click "Accept," and download the Oracle client software.

[Click for walkthrough]
Select the "Oracle Database 10g Client... for Mac OS X" distribution...
Accept the license, and then click on the file listing to start the download...
The download...


Step 2: Unpack the client software and put it somewhere.

Just double-click on the .zip file in your Downloads folder to extract it. On my system, I created an "Oracle10g" folder under the base Applications folder. Wherever you put it, you'll move the "ohome" and "docs" folder there. When done, the full path to the client software should be something like /Applications/Oracle10g/ohome.

A warning: If you have FileVault turned on, you might want to move this file to a non-encrypted area on your hard drive before expanding it.

[Click for walkthrough]
Move the files to /Applications/Oracle10g


Step 4: Get Additional JARs

OID Administrator requires some Java files which were not included in the OSX shiphome. While it's not generally a good idea to mix and match distributions, we're pretty safe in this particular case, since we're essentially dealing with pure Java code. Of course, this comes with the serious caveat that Nothing We Are Doing Here Is Supported By Oracle—But hey, their "support" of Mac OS X is spotty at best, so it's not like this is altogether uncharted territory.

With that caveat in mind, jump back over to OTN, because we need to download a product that ships with the missing JAR files. For these purposes, the files provided by an OracleAS 10.1.2 mid-tier installation will work, so hop over to the download page at this address and pull down CD1 of the Linux x86 version of that product.

[Click for walkthrough]
Jump to OracleAS 10.1.2.0.2, which contains the files we're going after.
Here's where we lose those of you who are following along from the Islamic Republic of Iran.
Even though it's Java, it'll be easier for both of us if you make sure to pick the Linux CD1 here.


Once downloaded, you'll probably want to jump to the commandline, because there really isn't any easier way to do this. Once you're safely ensconced in Terminal, do the following:

$ cd $HOME/Downloads/
$ mkdir Pain
$ cd Pain
$ cpio -idmv < ../as_as_linux_x86_portal_wireless_101202_disk1.cpio
......... (a bunch of output)
$ unzip -j Disk1/stage/Components/oracle.oid.client_common/10.1.2.0.1/1/DataFiles/lib.jar
Archive: Disk1/stage/Components/oracle.oid.client_common/10.1.2.1.0/1/DataFiles/lib.jar
inflating: netutil.jar
inflating: oidldap.jar
$ unzip -j Disk1/stage/Components/oracle.oid.client_common/10.1.2.0.1/1/DataFiles/odm.jar
Archive: Disk1/stage/Components/oracle.oid.client_common/10.1.2.1.0/1/DataFiles/odm.jar
inflating: odm_help.jar
inflating: osdadmin.jar
$ unzip -j Disk1/stage/Components/oracle.bali.share/1.1.18.0.0/1/DataFiles/share.jar
Archive: Disk1/stage/Components/oracle.bali.share/1.1.18.0.0/1/DataFiles/share.jar
inflating: share.jar
$ unzip -j Disk1/stage/Components/oracle.bali.ewt/3.4.38.0.0/1/DataFiles/ewt.jar
Archive: Disk1/stage/Components/oracle.bali.ewt/3.4.38.0.0/1/DataFiles/ewt.jar
inflating: ewt3.jar
inflating: ewt3-nls.jar
$ mkdir -p /Applications/Oracle10g/ohome/ldap/java/classes
$ mv netutil.jar /Applications/Oracle10g/ohome/ldap/java/classes/
$ mv share.jar /Applications/Oracle10g/ohome/ldap/java/classes/
$ mv ewt3*jar /Applications/Oracle10g/ohome/ldap/java/classes/
$ mv oidldap.jar /Applications/Oracle10g/ohome/ldap/lib/
$ mv osdadmin.jar /Applications/Oracle10g/ohome/ldap/lib/
$ rm odm_help.jar


Step 5: Create shell script wrapper?

On my system, I created a wrapper script that I can run from the terminal (where I spend most of my time), without having to worry about setting the environment or changing my login profile. Here's how it looks:

#!/bin/sh

ORACLE_HOME=/Applications/Oracle10g/ohome; export ORACLE_HOME
PATH=$ORACLE_HOME/bin:$PATH; export PATH
JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/1.4.2/Home; export JAVA_HOME

$ORACLE_HOME/bin/oidadmin


Step 6: Run it!

It doesn't matter whether you double-click or you type—You're guaranteed to enjoy the glorious native processing goodness that results!

Yum!


Server settings!


Tree-browsing goodness.


Did this work for you? Did you have problems with anything presented here? Do you know of a good way to package this as a native Mac icon?

Chime in down in the comments section. I definitely want to hear what you have to say!
 
Snap.com Popups

If they're driving you crazy, please click here to disable them on this website.




Trackbacks

No Trackbacks

Comments [RSS]
Display comments as (Linear | Threaded)

Here is what a handful of random people think about this article. But first, the fine print:
The opinions expressed here, even where approved for display, do not necessarily reflect the opinions of this website, the management, or any other entity or organization, with the exception of the Vast Zionist Conspiracy. Those opinions we represent in style, yo. Please keep the language in these comments clean, as this is intended to be a family-friendly, work-friendly website. Comments not compliant with this policy will be edited for content where necessary. Abusive or otherwise illegal comments will be reported to the proper authorities, up to and including the aforementioned Vast Zionist Conspiracy. The Management cannot and will not be held responsible for commenters making a spectacle of themselves, even if The Management are the said commenters in question. In other words, don't take yourself so seriously, folks. We're all here to discuss the news, and more importantly, to have fun. Now go get yourself into some OCD treatment program—you obviously need it if you actually read all of this mess.

No comments

Add Comment

HTML-Tags will be converted to Entities.
Gravatar/MyBlogLog/Favatar/Pavatar/Pavatar author images supported.
Enclosing asterisks marks text as bold (*word*), underscore are made via _word_.
Standard emoticons like :-) and ;-) are converted to images.
BBCode format allowed
E-Mail addresses will not be displayed and will only be used for E-Mail notifications

To prevent automated Bots from commentspamming, please enter the string you see in the image below in the appropriate input box. Your comment will only be submitted if the strings match. Please ensure that your browser supports and accepts cookies, or your comment cannot be verified correctly.
CAPTCHA