Archive for August, 2007

The first time that i had to find the exact Oracle Application Server Version I thought it would be an easy task but, it is not so simple if you don’t know where to look for it. I forgot that it was not straightforward because now I know where to find it. But the other day a friend called me and asked me where to find OAS version. That’s why i’m writing this post.

If you got a fresh install you can look into <ORACLE_HOME>/install/readme.txt and find the version.

But i prefer to take a look into <ORACLE_HOME>/config/ias.properties
For example:

$ grep Version $ORALCE_HOME/config/ias.properties
Version=10.1.2.0.2

In AIX 5L Version 5.3 when you start the iasconsole and then you access to Oracle Application Server console using a web browser, then the application hangs and the following error message is displayed in the web browser:

500 Internal Server Error


java.lang.NoClassDefFoundError: oracle/sysman/eml/app/Console
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java(Compiled Code))
at com.evermind[Oracle Application Server Containers for J2EE 10g ...

at java.lang.Thread.run(Thread.java:568)

This error occurs because the EMCTL IAS console hangs after logging in. Check the emdctl.trc file to verify the issue.

The next steps describe how to rectify this issue.

(more…)

A missing feature in Drupal is the ability to preview changes made to the home page. If you have a custom page as your home and you promote several pieces of content to it there is no way for you to preview how it will look. If the content breaks the layout or doesn’t look as good as you expect it to do then you’ll have to make several changes to fine-tune your home. Wouldn’t it be great if you could get a preview of your home and when you are satisfied with the all the changes hit a publish button to see all your changes commit at once? Well you can! Read on to see how.

(more…)

A problem which often arises when writing Drupal themes, modules, etc. is making sure there are no ‘hard-coded’ paths in our code. To help new users on their quest to writing quality Drupal code I list here the most used API functions to get paths in a portable way:

  • global $base_url - A global variable which stores your sites URL, typically http://www.<your_site>.com. This variable is set in your settings.php configuration file. This is not very portable and maybe in the future Drupal has a function for this.
  • base_path() - Returns the base URL path of the Drupal installation. At the very least, this will always default to /. This is used, for example when you want to add a resource relative to your base_url. For example like so: drupal_set_html_head(’<style type=”text/css” media=”all”>@import “‘. base_path() . drupal_get_path(’module’, ’system’) .’/system.css”;</style>’);
  • conf_path() - Based on your sites URL tries to find the most appropiate settings.php (site configuration file). To read how it works see Drupals API documentation
  • drupal_get_path($type, $name) - Returns the path to a system item (module, theme, etc.). The $type argument can be ‘theme’, ‘theme_engine’ or ‘module’ and $name the name of the item for which you want the path. To get an absolute path you need to prefix the $DOCUMENT_ROOT (the document root of your drupal installation).
  • path_to_theme() - This points to your theme’s path on the local filesystem. Usually $DOCUMENT_ROOT/themes/<your_theme> or $DOCUMENT_ROOT/sites/<your_site>/themes/<your_theme>
  • path_to_engine() - Returns the path to the currently selected engine.

To learn a bit more search for this terms in the API search box or ‘use the source, Luke!’.

A pesar de su empinada curva de aprendizaje, el editor de texto Vim es la elección de varios de los desarrolladores en Easytech, por su poder, simpleza y customización.

Como lo usamos para casi todo tipo de edición, desde modificar un archivo de configuración hasta programar una aplicación, se nos ocurrió buscar maneras de personalizarlo para incrementar su potencial.

Resultó que Vim 7 ya trae consigo actualizaciones muy prácticas para programadores. Algunas otras las agregaremos a modo de Plugins, con una mínima configuración, como se detalla a continuación:

(more…)