Posts Tagged ‘java’

Search Engines for Fun and Profit Part Two: Installing Open Search Server

After downloading the stable release of OSS at their SourceForge page load up their Quick Start guide for your platform. Decompress the package to your /opt/ directory. The first thing you will want to do is create a “nobody” user account for the server to run under.

On Gentoo, run:

# useradd -d /opt/open-search-server -s /sbin/nologin -r oss

The -d flag specifies the user’s home directory, -s /sbin/nologin specifies a disabled shell and -r puts the UID of the given user in the “system accounts” range. It is important that the data directory is writable by the new account so change its ownership:

# chown oss: data/ -R

You also need to make some of the tomcat applet container’s files writable:

# chown oss: apache-tomcat-6.0.20/logs/ -R
# chown oss: apache-tomcat-6.0.20/temp/ -R
# chown oss: apache-tomcat-6.0.20/work/ -R

Now we want the server to start on boot-up. You can either make an init script or take the easy route and drop it in your local. On Gentoo edit /etc/conf.d/local.start to reflect:

cd /opt/open-search-server
sudo -u oss ./start.sh

You will either need to change the working directory as shown above or add OSS to your PATH otherwise java will complain about missing files.

Similarly, configure your local to shut down the app gracefully:

killall -15 java

Start your init script or restart local and you should find your instance of OSS chugging away:

spider open-search-server # ps aux | grep java
oss       9744 57.9 63.5 279724 166616 pts/0   Sl   14:43   2:28 /usr/lib/jvm/icedtea6-bin/bin/java -Djava.util.logging.config.file=/opt/open-search-server/apache-tomcat-6.0.20/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/opt/open-search-server/apache-tomcat-6.0.20/endorsed -classpath :/opt/open-search-server/apache-tomcat-6.0.20/bin/bootstrap.jar -Dcatalina.base=/opt/open-search-server/apache-tomcat-6.0.20 -Dcatalina.home=/opt/open-search-server/apache-tomcat-6.0.20 -Djava.io.tmpdir=/opt/open-search-server/apache-tomcat-6.0.20/temp org.apache.catalina.startup.Bootstrap start

You can now connect to the management interface at http://[server-addresss]:8080 .

Search Engines for Fun and Profit Part One: Introduction

I started playing with search engines a couple years ago when I started up FurFinder.net for the Bad Karma Networks line of sites. At the time the pickings were slim, most of the software available was either discontinued or poorly supported. This was also true of DataparkSearch but it was the thinnest kid at fat camp. More importantly, it was the first one I got to work – despite much sweat and tears expended.

Eventually I started redeploying DP search in my professional work; it’s good to have search results embedded in your site since they provide great fodder for google et al. Unfortunately, due to the round-about way I had to compile DP it did not lend itself well to library updates and so on. Eventually I let FurFinder slip into disrepair; it was simply not worth the trouble dicking around with DP’s ./configure options and lengthly config files to keep the spider/index end of it operational.

This week, however, I have had reason to revisit the whole search engine arena again. I’m finishing up a contract with a client who had requested this feature, and I set them up with DP search about a year ago. In that time the “stored” content storage daemon, responsible in part for producing relevant content excerpts in the search results, had decided it would like to stop starting or producing any output at all. Additionally, I was planning on making a large multi-item announcement on the BKN sites covering things like the new image board interfaces and mass virtual hosting platform. Wouldn’t it be nice to re-launch FurFinder.net too?

Normally I avoid Java software like the plague but this time Open Search Server caught my eye thanks to rave reviews. I was not let down. Five minutes after I downloaded their binary package I was logged into the web-based front end. Half an hour later I had my client’s site indexed. An hour after that I had the search results seamlessly integrated with their site.

This series will chronicle my experience migrating FurFinder.net to OSS, from installation to fine tuning and maybe even some code samples here and there.

The Telus LG Keybo 2: Hacker Hater (aka VX9200, CX9200, enV3)

I just bought my first cellphone in years. I know that sounds strange coming from an IT guy but my logic is sound: if you don’t have one your boss can’t call it. One of my colleagues is a big VoIP genius and he pointed out that by using a dial-out gateway and Telus’ one-number-unlimited feature it’s possible to have the equivalent of unlimited calling for $7 per month on a prepaid phone – plus the one-time cost of provisioning a phone number that forwards incoming calls back through the gateway (about $25). I’ve been horny for the newer android-based phones that are in circulation in the states but most of the ones I want don’t operate on the Canadian bands yet and/or it will take a long time before they are rolled out up here, thus I decided for unlimited calling at $7 a month I may as well settle for a cheap phone in the mean time. I decided to tack on $10/month unlimited web browsing because it makes the e-mail and instant messaging packages moot.

The Keybo 2 is the closest thing to a smart phone in Telus’ prepaid lineup, and at the time of writing the most expensive – clocking in at a modest $99. It sports a 160x96px external screen and flips open to reveal a large QWERTY keyboard and 320x240px internal screen. There are stereo speakers mounted on either side of the internal screen and to be perfectly frank they are better sounding than my laptop’s. The Keybo 2 has a 3.2MP flash camera that takes decent pictures but crappy closeups.

In the United States (and possibly elsewhere) the Keybo 2 is marketed as the enV3. The Canadian model number is CX9200 and the US model is VX9200; as far as I can tell the difference is cosmetic. Verizon seems to be the main carrier for enVs in the states and Koodo is popular in Canada as well. Interestingly the Koodo and Verizon firmwares of the phone do not include Java support. It would seem that the popular thing to do with your Keybo is flash it to Telus’ firmware if you’re on a different provider. Unfortunately Telus’ firmware is so locked down that one wonders just how bad Verizon’s could be.

I’ve had a hell of a time over the past few days trying to find information on hacking the Keybo 2, most of the results I have found thus far only apply to the original Keybo (aka enV2 or VX9100), for example it no longer seems possible to simply overwrite application slots with other java apps to install them on the phone. Telus’ proxy prevents users from downloading apps from the web that don’t come from their store. I have tried altering the proxy settings to use a personal proxy on ports 8118, 80 and 110 but the browser fails to connect. I even tried popping the opera mini .jad and .jar files onto an SSL site and altering the .jad to pull from the new URL to no avail – the download begins, posts, then returns this error:

Issue has been reported.
Please try again later.

950 Server Error (-1289)

then the browser bounces back to the Telus apps store. I tried renaming the .jar to .jax (and updating the .jad accordingly) also to no avail.  I am beginning to suspect that the firmware has been modified to enforce some sort of DRM for applications. Custom ringtones are a pain in the ass as they definitely require DRM, fortunately they can be dropped into the phone’s filesystem at /brew/shared/ringtone/ with BitPim (1.0.7+ supports the CX9200) and given DRM with the Sony-Ericsson DRM Packager.

I couldn’t find the right SPC code for my particular phone anywhere (unlike the old Keybo/enV2 it does not have nvm_XXXX files) so I had to grab it with CDMA Workshop (it’s 105495 by the way). With the correct SPC you can access the programming menus for your phone by dialing:

##DEBUG
##TELUS
##BROWSER
##TEST
##DATA

Note that you can get into ##DEBUG on any LG phone with the unlock code 183729.

Overall, this phone pisses me off because it could do so much more but Telus makes it extremely difficult to modify. While there is some community support for the Keybo/enV2 those of us with the new Keybo 2s and enV3s are practically on our own at present time. The fact that the Telus firmware is considered “the good firmware” is extremely discouraging, flashing your old Verizon enV2 to Telus’ old Keybo firmware may let you load on some java apps but how to do this successfully on the newer Keybo 2′s firmware is as yet a mystery.

Return top
foxpa.ws
Online Marketing Toplist
Internet
Technology Blogs - Blog Rankings

Internet Blogs - BlogCatalog Blog Directory

blogarama - the blog directory
Technology blogs
Bad Karma Networks

Please Donate!


Made in Canada  •  There's a fox in the Gibson!  •  2010-12