views:

264

answers:

1

I have a java stored procedure that takes in a clob representing a chunk of javascript and mins it. The structure of the function calling the JSP is as follows:

function MIN_JS(pcl_js in clob) return clob as
  language java name 'JSMin.min(oracle.sql.CLOB) return oracle.sql.CLOB';

In the actual JSP, I have the following:

import oracle.sql.CLOB;

public class JSMin {
...
public static min(CLOB js) {
...
}

The problem I'm having is that whenever I pass a clob to JS_MIN, it is always interpreted as null inside the JSP. I've checked the clob before calling JS_MIN annd it definitely has contents. Any ideas as to what I'm missing? Any help is greatly appreciated.

A: 

As it turns out, one of the javascript chunks I was sending was in fact null. We have several packages that generate javascript for various controls and one is apparently still under development and wrapped in a way that it always returns null unless you are logged in as a particular user.

In my code, I loop across all the javascript packages, sending each to JS_MIN. Everything was working peachy until the package still in development came along and passed null. I added a simple check for null and everything works perfectly now.

So the short answer is: Doh!

JDS