Webutil error ORA-105101 with client_image.read_image_file() from AS Oracle
Hello,
I have an Oracle Forms 10g form (Webutil 1.0.6 enabled) that is attempting to read a .JPG image from C:\Temp in order to write it to a block with a blob.
The when-button-pressed trigger looks like:
vfilename := client_get_file_name('c:\', file_filter=>'Tiff Files (*.tiff)|*.tiff|JPEG Files (*.jpg)|*.jpg|');
v_ending := substr(vfilename,instr(vfilename,'.')+1);
client_image.read_image_file(vfilename,v_ending,'SR_SCREEN_SHOTS.SCREEN_SHOT'); ---- error occurs during call here
vwritefile := '/home/oracleas/temp/'||SUBSTR (vfilename,INSTR (vfilename, '\', -1) + 1,100);
client_image.write_image_file(vwritefile,v_ending,'SR_SCREEN_SHOTS.SCREEN_SHOT',maximize_compression,ORIGINAL_DEPTH);
I am encountering a generic oracle error (ORA-105101) when attempting to execute the client_image.read_image_file() function line above, in my Oracle forms application on AS 10.1.2 (Unix AIX implementation). This functionality worked perfect while developing on DS locally (Windows XP), but will not work on AS.
The webutil.cfg file settings are as follows:
#NOTE: By default the file transfer is disabled as a security measure
transfer.database.enabled=TRUE
transfer.appsrv.enabled=TRUE
transfer.appsrv.workAreaRoot=/home/oracleas/temp/
transfer.appsrv.accessControl=TRUE
#List transfer.appsrv.read.<n> directories
transfer.appsrv.read.1=c:\temp\
transfer.appsrv.read.2=c:\
transfer.appsrv.read.3=/home/oracleas/temp/
#List transfer.appsrv.write.<n> directories
transfer.appsrv.write.1=/home/oracleas/temp/
The formsweb.cfg settings for this config are:
#Webutil settings
WebUtilArchive=frmwebutil.jar,jacob.jar
WebUtilLogging=All
WebUtilLoggingDetail=Detailed
WebUtilErrorMode=Alert
WebUtilDispatchMonitorInterval=5
WebUtilTrustInternal=true
#WebUtilMaxTransferSize=16384
WebUtilMaxTransferSize=2000000
baseHTMLjinitiator=webutiljini.htm
baseHTMLjpi=webutiljpi.htm
archive_jini=frmall_jinit.jar, handleimage.jar, classes12.jar
archive=frmall.jar
I enabled webutil logging and here are the results:
2011-Jun-01 11:31:43.320 WUI[setProperty()] Setting property WUC_SRV_LOGGING to 2
2011-Jun-01 11:31:43.320 WUI[setProperty()] Setting property WUC_SRV_LOGGING to 2
2011-Jun-01 11:31:43.320 WUI[setProperty()] Setting property WUC_GET_LOCAL_PROPERTY to syslib.ffisamp.dll
2011-Jun-01 11:31:43.320 WUI[getProperty()] Getting property WUC_GET_LOCAL_PROPERTY
2011-Jun-01 11:31:43.320 WUI[getProperty()] Value of WUC_GET_LOCAL_PROPERTY=1.0
2011-Jun-01 11:31:43.523 WUT[setProperty()] Setting property WUC_SRV_LOGGING to 2
2011-Jun-01 11:31:43.523 WUT[setProperty()] Setting property WUC_GET_LOCAL_PROPERTY to syslib.jacob.dll
2011-Jun-01 11:31:43.523 WUT[getProperty()] Getting property WUC_GET_LOCAL_PROPERTY
2011-Jun-01 11:31:43.523 WUT[getProperty()] Value of WUC_GET_LOCAL_PROPERTY=1.0
2011-Jun-01 11:31:43.726 WUT[setProperty()] Setting property WUC_GET_LOCAL_PROPERTY to syslib.JNIsharedstubs.dll
2011-Jun-01 11:31:43.726 WUT[getProperty()] Getting property WUC_GET_LOCAL_PROPERTY
2011-Jun-01 11:31:43.726 WUT[getProperty()] Value of WUC_GET_LOCAL_PROPERTY=1.0
2011-Jun-01 11:31:43.929 WUT[setProperty()] Setting property WUC_GET_LOCAL_PROPERTY to syslib.d2kwut60.dll
2011-Jun-01 11:31:43.929 WUT[getProperty()] Getting property WUC_GET_LOCAL_PROPERTY
2011-Jun-01 11:31:43.929 WUT[getProperty()] Value of WUC_GET_LOCAL_PROPERTY=1.0
2011-Jun-01 11:31:44.132 WUB[setProperty()] Setting property WUC_SRV_LOGGING to 2
2011-Jun-01 11:31:44.132 WUL[setProperty()] Setting property WUC_SRV_LOGGING to 2
2011-Jun-01 11:31:44.132 WUO[setProperty()] Setting property WUC_SRV_LOGGING to 2
2011-Jun-01 11:31:44.132 WUS[setProperty()] Setting property WUC_SRV_LOGGING to 2
2011-Jun-01 11:31:44.132 WUH[setProperty()] Setting property WUC_SRV_LOGGING to 2
2011-Jun-01 11:31:44.132 WUF[setProperty()] Setting property WUC_SRV_LOGGING to 2
2011-Jun-01 11:31:56.413 WUF[setProperty()] Setting property WUF_GFN_DIRNAME to c:\
2011-Jun-01 11:31:56.413 WUF[setProperty()] Setting property WUF_FILENAME to false
2011-Jun-01 11:31:56.413 WUF[setProperty()] Setting property WUF_FILTER to Tiff Files (*.tiff)|*.tiff|JPEG Files (*.jpg)|*.jpg|
2011-Jun-01 11:31:56.413 WUF[setProperty()] Setting property WUF_GFN_MESSAGE to false
2011-Jun-01 11:31:56.413 WUF[setProperty()] Setting property WUF_GFN_MULTISELECT to FALSE
2011-Jun-01 11:31:56.413 WUF[setProperty()] Setting property WUF_GFN_OPENFILE to
2011-Jun-01 11:31:56.460 WUF[gfnDialog run()] Creating Custom File Filter : Mask=*.tiff, Label=Tiff Files (*.tiff)
2011-Jun-01 11:31:56.460 WUF[gfnDialog run()] Creating Custom File Filter : Mask=*.jpg, Label=JPEG Files (*.jpg)
2011-Jun-01 11:31:56.476 WUF[gfnDialog run()] Open File mode
2011-Jun-01 11:32:17.663 WUF[gfnDialog run()] Selected Directory: C:\temp\ Selected File: sample_screenshot3.jpg
2011-Jun-01 11:32:20.507 WUT[getProperty()] Getting property WUT_MAX_BYTES
2011-Jun-01 11:32:20.507 WUT[getProperty()] Value of WUT_MAX_BYTES=16384
2011-Jun-01 11:32:46.351 WUF[setProperty()] Setting property WUF_FILENAME to C:\temp\sample_screenshot3.jpg
2011-Jun-01 11:32:46.351 WUF[setProperty()] Setting property WUF_FILE_ATTRIBUTE to 2
2011-Jun-01 11:32:46.351 WUF[getProperty()] Getting property WUF_FILE_ATTRIBUTE
2011-Jun-01 11:32:46.366 WUF[getProperty()] Value of WUF_FILE_ATTRIBUTE=TRUE
2011-Jun-01 11:32:46.570 WUF[setProperty()] Setting property WUF_FILENAME to C:\temp\sample_screenshot3.jpg
2011-Jun-01 11:32:46.570 WUF[setProperty()] Setting property WUF_FILE_ATTRIBUTE to 4
2011-Jun-01 11:32:46.570 WUF[getProperty()] Getting property WUF_FILE_ATTRIBUTE
2011-Jun-01 11:32:46.570 WUF[getProperty()] Value of WUF_FILE_ATTRIBUTE=FALSE
2011-Jun-01 11:32:46.773 WUT[getProperty()] Getting property WUT_STATUS
2011-Jun-01 11:32:46.773 WUT[getProperty()] Value of WUT_STATUS=FREE
2011-Jun-01 11:32:46.976 WUT[setProperty()] Setting property WUT_FILE_INFO to C:\temp\sample_screenshot3.jpg|0|S|N||
2011-Jun-01 11:32:46.976 WUT[getProperty()] Getting property WUT_FILE_INFO
2011-Jun-01 11:32:46.976 WUT[getProperty()] Value of WUT_FILE_INFO=24255|2
After placing many messages in the webutil.pll file, I finally found the line where the error is occurring. It occurs during the call from the Webutil_file_transfer.UploadInt() function to JAVA_APPSERV_WRITER.NEW as follows:
jobj := JAVA_APPSERV_WRITER.NEW;
My classpath variable contains the following:
+/u01/app/oracleas/product/frs/10.1.2/forms/java/frmwebutil.jar:+
+/u01/app/oracleas/product/frs/10.1.2/jdk/jre/lib/rt.jar:+
+/u01/app/oracleas/product/frs/10.1.2/forms/java/frmall.jar+
And like stated above, this worked perfect on local DS implementation but not on Unix AIX AS implementation. Any help would be greatly appreciated!
Thanks!
Gerardo