Java.io.IOException in file upload: WLS 5.1 on Unix
Hi,
I'm running into some problems with Weblogic Server on Unix, while trying to do
a servlet-based file upload. I'm trying to upload a file to the server file
system through a file upload servlet running inside Weblogic Server 5.1, and I
get an exception when I try to create a file on the Unix server filesystem:
java.io.IOException: Not owner
at java.io.UnixFileSystem.createFileExclusively(Native Method)
at java.io.File.createNewFile(File.java:692)
at com.cysive.filemanagement.UploadFile.save(UploadFile.java:84)
I tried changing the upload location to various places, like directly in the
docroot (myserver/public_html), in my home directory, etc. I am not sure which
owner Weblogic is looking for, because the process is owned by whoever starts
the WL server. And the strange thing is, I am able to create new directories on
the file system, just not files.
When I run the exact code on WinNT, everything works fine... I am able to create
files and directories and the upload goes through smoothly.
I'm thinking there is something I need to be setting in the weblogic.properties
file on Unix by way of permissions/privileges that is not required on WinNT, but
was not able to find anything in the documentation.
Could anyone help, please?
Thanks.
Hrishi
Check what user/group you are running your weblogic server.(check out the user who starts as well as UID/user/group in weblogic.properties file if you have set them).
check out whether that user/group has necessary permission on unix m/c
Hrishi Dixit <[email protected]> wrote:
>
Hi,
I'm running into some problems with Weblogic Server on Unix, while trying to do
a servlet-based file upload. I'm trying to upload a file to the server file
system through a file upload servlet running inside Weblogic Server 5.1, and I
get an exception when I try to create a file on the Unix server filesystem:
java.io.IOException: Not owner
at java.io.UnixFileSystem.createFileExclusively(Native Method)
at java.io.File.createNewFile(File.java:692)
at com.cysive.filemanagement.UploadFile.save(UploadFile.java:84)
I tried changing the upload location to various places, like directly in the
docroot (myserver/public_html), in my home directory, etc. I am not sure which
owner Weblogic is looking for, because the process is owned by whoever starts
the WL server. And the strange thing is, I am able to create new directories on
the file system, just not files.
When I run the exact code on WinNT, everything works fine... I am able to create
files and directories and the upload goes through smoothly.
I'm thinking there is something I need to be setting in the weblogic.properties
file on Unix by way of permissions/privileges that is not required on WinNT, but
was not able to find anything in the documentation.
Could anyone help, please?
Thanks.
Hrishi
Similar Messages
-
ChaRM class java.io.IOException:The file does not exist on the filesystem
Hi All,
We are implementing ChaRM with Portal. While deploying we are running into following issue.
Deployable-Id:/usr/sap/trans/data/GPSK90001B/sktp14_20100806_095633.epa
Returncode:'12'
class java.io.IOException:The file (/usr/sap/trans/data/GPSK90001B/sktp14_20100806_095633.epa) does not exist on the filesystem.
Any suggestion.
Regards,
SmitaWe resolved this issue by sharing the trans file across SolMan and Portal system.
-
I started jetty in nonstop server on port 18095 and it was running fine, few days later suddenly noticed it consumes more CPU, when I check the log noticed the following log writing continiously
2015-07-08 13:25:48.606:WARN:oejs.ServerConnector:qtp26807578-18-acceptor-0@182e42f-ServerConnector@1f02fde {HTTP/1.1}{0.0.0.0:18095}:
java.io.IOException: Bad file descriptor (errno:4009)
at sun.nio.ch.ServerSocketChannelImpl.accept0(Native Method)
at sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:241)
at org.eclipse.jetty.server.ServerConnector.accept(ServerConnector.java:377)
at org.eclipse.jetty.server.AbstractConnector$Acceptor.run(AbstractConnector.java:500)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
at java.lang.Thread.run(Thread.java:724)
Can any one guess the root cause. Thanks.I am using jdbc to connect the database. I want to update the blob fields that is picture into the database. Now i am using preparedstatement to update the fields. When it causes error, it will closed automatically. At that time, it causes bad file descriptor.
-
Exception clearing file manager: java.io.IOException: Bad file number
I see the following exception when closing the environment. Not reproducible easily, happens only with production user's data occasionally. Any ideas on what causes this and what can be done to resolve it?
com.sleepycat.je.RunRecoveryException: (JE 3.2.74)
Exception clearing file manager: java.io.IOException: Bad file number
at com.sleepycat.je.dbi.EnvironmentImpl.doClose(EnvironmentImpl.java:1123)
at com.sleepycat.je.dbi.EnvironmentImpl.close(EnvironmentImpl.java:995)
at com.sleepycat.je.Environment.close(Environment.java:322)Thanks for the pointers.
We are running on Solaris.
I located a narrow window in our code where another thread from the same process was permitted to close the environment when a close is already in progress. Will plug that window. -
File Upload then save to OS (Unix)
I have created a file upload app using the How-To. It works great. Instead of moving the file to a custom table I would like to save the file on to the OS. Any good code samples for this type of thing.
Have a look here
http://asktom.oracle.com/pls/ask/f?p=4950:8:::NO::F4950_P8_DISPLAYID,F4950_P8_CRITERIA:6379798216275 -
Java.io.IOException: Failed to rename log file on attempt to rotate logs
Hello.
I'm currently using Weblogic 5.1 SP6 on WinNT Server 4.0 SP6.
I set the weblogic.properties file like this so that the "access.log" will
be rotated every day at midnight.
-- weblogic.properties --
weblogic.httpd.enableLogFile=true
weblogic.httpd.logFileName=D:/WLSlog/access.log
weblogic.httpd.logFileFlushSecs=60
weblogic.httpd.logRotationType=date
weblogic.httpd.logRotationPeriodMins=1440
weblogic.httpd.logRotationBeginTime=11-01-2000-00:00:00
-- weblogic.properties <end>--
The rotation has been working well, but one day when I checked my
weblogic.log, I was getting some errors.
I found out that my "access.log" wasn't being rotated (nor being written,
flushed) after this error came out.
After rebooting WebLogic, this problem went away.
Has anyone clues about why WebLogic failed to "rename log file?"
-- weblogic.log --
? 2 04 00:00:00 JST 2001:<E> <HTTP> Exception flushing HTTP log file
java.io.IOException: Failed to rename log file on attempt to rotate logs
at weblogic.t3.srvr.httplog.LogManagerHttp.rotateLog(LogManagerHttp.java,
Compiled Code)
at java.lang.Exception.<init>(Exception.java, Compiled Code)
at java.io.IOException.<init>(IOException.java, Compiled Code)
at weblogic.t3.srvr.httplog.LogManagerHttp.rotateLog(LogManagerHttp.java,
Compiled Code)
at
weblogic.t3.srvr.httplog.LogManagerHttp.access$2(LogManagerHttp.java:271)
at
weblogic.t3.srvr.httplog.LogManagerHttp$RotateLogTrigger.trigger(LogManagerH
ttp.java:539)
at
weblogic.time.common.internal.ScheduledTrigger.executeLocally(ScheduledTrigg
er.java, Compiled Code)
at
weblogic.time.common.internal.ScheduledTrigger.execute(ScheduledTrigger.java
, Compiled Code)
at weblogic.time.server.ScheduledTrigger.execute(ScheduledTrigger.java,
Compiled Code)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java, Compiled Code)
? 2 04 00:00:25 JST 2001:<E> <HTTP> Exception flushing HTTP log file
java.io.IOException: Bad file descriptor
at java.io.FileOutputStream.writeBytes(Native Method)
at java.io.FileOutputStream.write(FileOutputStream.java, Compiled Code)
at
weblogic.utils.io.DoubleBufferedOutputStream.flushBuffer(DoubleBufferedOutpu
tStream.java, Compiled Code)
at
weblogic.utils.io.DoubleBufferedOutputStream.flush(DoubleBufferedOutputStrea
m.java, Compiled Code)
at
weblogic.t3.srvr.httplog.LogManagerHttp$FlushLogStreamTrigger.trigger(LogMan
agerHttp.java, Compiled Code)
at
weblogic.time.common.internal.ScheduledTrigger.executeLocally(ScheduledTrigg
er.java, Compiled Code)
at
weblogic.time.common.internal.ScheduledTrigger.execute(ScheduledTrigger.java
, Compiled Code)
at weblogic.time.server.ScheduledTrigger.execute(ScheduledTrigger.java,
Compiled Code)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java, Compiled Code)
-- weblogic.log <end> --
note:
? 2 04 00:00:25 JST 2001:<E> <HTTP> Exception flushing HTTP log file
java.io.IOException: Bad file descriptor
keeps coming out every minute after on.
I suppose this is because I have set the HTTP log to be flushed every one
minute.
Thanks in advance.
RyotaroI'm also getting this error on Weblogic 6.1.1.
It only occurs if you set the format to "extended".
Is there any fix or workaround for this? -
Useful Code of the Day: Multipart Form File Upload
So, you want to upload files to your web server, do ya? Well, I've seen this topic posted a few times in the last month or so and many of the response I've seen here haven't included definitive answers. Of course, the actual problems vary, but ultimately, a bunch of people want to do file upload from an applet or application to an existing file upload script (CGI, PHP, JSP, etc.) on a web server. And invariably, there are problems with formatting the HTTP request to get things working.
Well, I had a need to do the same thing. I realize there are other solutions out there, such as some sample code that comes with Jakarta Commons Upload. But since we all like reusable code, and we also all seem to like reinventing wheels, here's my go at it: MultiPartFormOutputStream!
MultiPartFormOutputStream is a specialized OutputStream-like class. You create your URLConnection to the server (a static method included can do this for a URL for you, as some of the settings, doInput and doOutput specifically, seem to confuse people). Then get the OutputStream from it and create a boundary string (a static method to create one is provided as well) and pass them to the constructor. Now you have a MultiPartFormOutputStream which you can use to write form fields like text fields, checkboxes, etc., as well as write file data (from Files, InputStreams or raw bytes).
There are some convenience methods for writing primative type values as well as strings, but any higher level objects (aside from Files or InputStreams) aren't supported. (You can always serialize and pass the raw bytes.)
Sample usage code is below. Also, any recommendations for improvement are requested. The code was tested with the Jakarta Struts.
import java.io.*;
import java.net.*;
* <code>MultiPartFormOutputStream</code> is used to write
* "multipart/form-data" to a <code>java.net.URLConnection</code> for
* POSTing. This is primarily for file uploading to HTTP servers.
* @since JDK1.3
public class MultiPartFormOutputStream {
* The line end characters.
private static final String NEWLINE = "\r\n";
* The boundary prefix.
private static final String PREFIX = "--";
* The output stream to write to.
private DataOutputStream out = null;
* The multipart boundary string.
private String boundary = null;
* Creates a new <code>MultiPartFormOutputStream</code> object using
* the specified output stream and boundary. The boundary is required
* to be created before using this method, as described in the
* description for the <code>getContentType(String)</code> method.
* The boundary is only checked for <code>null</code> or empty string,
* but it is recommended to be at least 6 characters. (Or use the
* static createBoundary() method to create one.)
* @param os the output stream
* @param boundary the boundary
* @see #createBoundary()
* @see #getContentType(String)
public MultiPartFormOutputStream(OutputStream os, String boundary) {
if(os == null) {
throw new IllegalArgumentException("Output stream is required.");
if(boundary == null || boundary.length() == 0) {
throw new IllegalArgumentException("Boundary stream is required.");
this.out = new DataOutputStream(os);
this.boundary = boundary;
* Writes an boolean field value.
* @param name the field name (required)
* @param value the field value
* @throws java.io.IOException on input/output errors
public void writeField(String name, boolean value)
throws java.io.IOException {
writeField(name, new Boolean(value).toString());
* Writes an double field value.
* @param name the field name (required)
* @param value the field value
* @throws java.io.IOException on input/output errors
public void writeField(String name, double value)
throws java.io.IOException {
writeField(name, Double.toString(value));
* Writes an float field value.
* @param name the field name (required)
* @param value the field value
* @throws java.io.IOException on input/output errors
public void writeField(String name, float value)
throws java.io.IOException {
writeField(name, Float.toString(value));
* Writes an long field value.
* @param name the field name (required)
* @param value the field value
* @throws java.io.IOException on input/output errors
public void writeField(String name, long value)
throws java.io.IOException {
writeField(name, Long.toString(value));
* Writes an int field value.
* @param name the field name (required)
* @param value the field value
* @throws java.io.IOException on input/output errors
public void writeField(String name, int value)
throws java.io.IOException {
writeField(name, Integer.toString(value));
* Writes an short field value.
* @param name the field name (required)
* @param value the field value
* @throws java.io.IOException on input/output errors
public void writeField(String name, short value)
throws java.io.IOException {
writeField(name, Short.toString(value));
* Writes an char field value.
* @param name the field name (required)
* @param value the field value
* @throws java.io.IOException on input/output errors
public void writeField(String name, char value)
throws java.io.IOException {
writeField(name, new Character(value).toString());
* Writes an string field value. If the value is null, an empty string
* is sent ("").
* @param name the field name (required)
* @param value the field value
* @throws java.io.IOException on input/output errors
public void writeField(String name, String value)
throws java.io.IOException {
if(name == null) {
throw new IllegalArgumentException("Name cannot be null or empty.");
if(value == null) {
value = "";
--boundary\r\n
Content-Disposition: form-data; name="<fieldName>"\r\n
\r\n
<value>\r\n
// write boundary
out.writeBytes(PREFIX);
out.writeBytes(boundary);
out.writeBytes(NEWLINE);
// write content header
out.writeBytes("Content-Disposition: form-data; name=\"" + name + "\"");
out.writeBytes(NEWLINE);
out.writeBytes(NEWLINE);
// write content
out.writeBytes(value);
out.writeBytes(NEWLINE);
out.flush();
* Writes a file's contents. If the file is null, does not exists, or
* is a directory, a <code>java.lang.IllegalArgumentException</code>
* will be thrown.
* @param name the field name
* @param mimeType the file content type (optional, recommended)
* @param file the file (the file must exist)
* @throws java.io.IOException on input/output errors
public void writeFile(String name, String mimeType, File file)
throws java.io.IOException {
if(file == null) {
throw new IllegalArgumentException("File cannot be null.");
if(!file.exists()) {
throw new IllegalArgumentException("File does not exist.");
if(file.isDirectory()) {
throw new IllegalArgumentException("File cannot be a directory.");
writeFile(name, mimeType, file.getCanonicalPath(), new FileInputStream(file));
* Writes a input stream's contents. If the input stream is null, a
* <code>java.lang.IllegalArgumentException</code> will be thrown.
* @param name the field name
* @param mimeType the file content type (optional, recommended)
* @param fileName the file name (required)
* @param is the input stream
* @throws java.io.IOException on input/output errors
public void writeFile(String name, String mimeType,
String fileName, InputStream is)
throws java.io.IOException {
if(is == null) {
throw new IllegalArgumentException("Input stream cannot be null.");
if(fileName == null || fileName.length() == 0) {
throw new IllegalArgumentException("File name cannot be null or empty.");
--boundary\r\n
Content-Disposition: form-data; name="<fieldName>"; filename="<filename>"\r\n
Content-Type: <mime-type>\r\n
\r\n
<file-data>\r\n
// write boundary
out.writeBytes(PREFIX);
out.writeBytes(boundary);
out.writeBytes(NEWLINE);
// write content header
out.writeBytes("Content-Disposition: form-data; name=\"" + name +
"\"; filename=\"" + fileName + "\"");
out.writeBytes(NEWLINE);
if(mimeType != null) {
out.writeBytes("Content-Type: " + mimeType);
out.writeBytes(NEWLINE);
out.writeBytes(NEWLINE);
// write content
byte[] data = new byte[1024];
int r = 0;
while((r = is.read(data, 0, data.length)) != -1) {
out.write(data, 0, r);
// close input stream, but ignore any possible exception for it
try {
is.close();
} catch(Exception e) {}
out.writeBytes(NEWLINE);
out.flush();
* Writes the given bytes. The bytes are assumed to be the contents
* of a file, and will be sent as such. If the data is null, a
* <code>java.lang.IllegalArgumentException</code> will be thrown.
* @param name the field name
* @param mimeType the file content type (optional, recommended)
* @param fileName the file name (required)
* @param data the file data
* @throws java.io.IOException on input/output errors
public void writeFile(String name, String mimeType,
String fileName, byte[] data)
throws java.io.IOException {
if(data == null) {
throw new IllegalArgumentException("Data cannot be null.");
if(fileName == null || fileName.length() == 0) {
throw new IllegalArgumentException("File name cannot be null or empty.");
--boundary\r\n
Content-Disposition: form-data; name="<fieldName>"; filename="<filename>"\r\n
Content-Type: <mime-type>\r\n
\r\n
<file-data>\r\n
// write boundary
out.writeBytes(PREFIX);
out.writeBytes(boundary);
out.writeBytes(NEWLINE);
// write content header
out.writeBytes("Content-Disposition: form-data; name=\"" + name +
"\"; filename=\"" + fileName + "\"");
out.writeBytes(NEWLINE);
if(mimeType != null) {
out.writeBytes("Content-Type: " + mimeType);
out.writeBytes(NEWLINE);
out.writeBytes(NEWLINE);
// write content
out.write(data, 0, data.length);
out.writeBytes(NEWLINE);
out.flush();
* Flushes the stream. Actually, this method does nothing, as the only
* write methods are highly specialized and automatically flush.
* @throws java.io.IOException on input/output errors
public void flush() throws java.io.IOException {
// out.flush();
* Closes the stream. <br />
* <br />
* <b>NOTE:</b> This method <b>MUST</b> be called to finalize the
* multipart stream.
* @throws java.io.IOException on input/output errors
public void close() throws java.io.IOException {
// write final boundary
out.writeBytes(PREFIX);
out.writeBytes(boundary);
out.writeBytes(PREFIX);
out.writeBytes(NEWLINE);
out.flush();
out.close();
* Gets the multipart boundary string being used by this stream.
* @return the boundary
public String getBoundary() {
return this.boundary;
* Creates a new <code>java.net.URLConnection</code> object from the
* specified <code>java.net.URL</code>. This is a convenience method
* which will set the <code>doInput</code>, <code>doOutput</code>,
* <code>useCaches</code> and <code>defaultUseCaches</code> fields to
* the appropriate settings in the correct order.
* @return a <code>java.net.URLConnection</code> object for the URL
* @throws java.io.IOException on input/output errors
public static URLConnection createConnection(URL url)
throws java.io.IOException {
URLConnection urlConn = url.openConnection();
if(urlConn instanceof HttpURLConnection) {
HttpURLConnection httpConn = (HttpURLConnection)urlConn;
httpConn.setRequestMethod("POST");
urlConn.setDoInput(true);
urlConn.setDoOutput(true);
urlConn.setUseCaches(false);
urlConn.setDefaultUseCaches(false);
return urlConn;
* Creates a multipart boundary string by concatenating 20 hyphens (-)
* and the hexadecimal (base-16) representation of the current time in
* milliseconds.
* @return a multipart boundary string
* @see #getContentType(String)
public static String createBoundary() {
return "--------------------" +
Long.toString(System.currentTimeMillis(), 16);
* Gets the content type string suitable for the
* <code>java.net.URLConnection</code> which includes the multipart
* boundary string. <br />
* <br />
* This method is static because, due to the nature of the
* <code>java.net.URLConnection</code> class, once the output stream
* for the connection is acquired, it's too late to set the content
* type (or any other request parameter). So one has to create a
* multipart boundary string first before using this class, such as
* with the <code>createBoundary()</code> method.
* @param boundary the boundary string
* @return the content type string
* @see #createBoundary()
public static String getContentType(String boundary) {
return "multipart/form-data; boundary=" + boundary;
}Usage: (try/catch left out to shorten the post a bit)
URL url = new URL("http://www.domain.com/webems/upload.do");
// create a boundary string
String boundary = MultiPartFormOutputStream.createBoundary();
URLConnection urlConn = MultiPartFormOutputStream.createConnection(url);
urlConn.setRequestProperty("Accept", "*/*");
urlConn.setRequestProperty("Content-Type",
MultiPartFormOutputStream.getContentType(boundary));
// set some other request headers...
urlConn.setRequestProperty("Connection", "Keep-Alive");
urlConn.setRequestProperty("Cache-Control", "no-cache");
// no need to connect cuz getOutputStream() does it
MultiPartFormOutputStream out =
new MultiPartFormOutputStream(urlConn.getOutputStream(), boundary);
// write a text field element
out.writeField("myText", "text field text");
// upload a file
out.writeFile("myFile", "text/plain", new File("C:\\test.txt"));
// can also write bytes directly
//out.writeFile("myFile", "text/plain", "C:\\test.txt",
// "This is some file text.".getBytes("ASCII"));
out.close();
// read response from server
BufferedReader in = new BufferedReader(
new InputStreamReader(urlConn.getInputStream()));
String line = "";
while((line = in.readLine()) != null) {
System.out.println(line);
in.close();------
"Useful Code of the Day" is supplied by the person who posted this message. This code is not guaranteed by any warranty whatsoever. The code is free to use and modify as you see fit. The code was tested and worked for the author. If anyone else has some useful code, feel free to post it under this heading.I have a weird problem here. I'm using the Java POST (slightly altered for my purposes) mechanism but the receiving script doesn't receive any form variables (neither files nor regular form fields). If I try using the same receiving script with a regular upload form, it works. Because I've been pulling my hair out, I even went so far as to analyze the ip-packets. I can see that the file is actually sent through the Java POST mecahnism. Anybody any ideas. Here's the ip-packet of the failing upload:
----- Hypertext Transfer Protocol -----
HTTP: POST /fotoxs/upload.cfm HTTP/1.1
HTTP: Connection: Keep-Alive
HTTP: Content-Type: multipart/form-data; boundary=-----------------------------fb2649be18
HTTP: User-Agent: Mozilla/4.7 [en] (WinNT; U)
HTTP: Accept-Language: en-us
HTTP: Accept-Encoding: gzip, deflate
HTTP: Accept: image/gif, image/jpeg, image/pjpeg, */*
HTTP: CACHE-CONTROL: no-cache
HTTP: Host: newmarc
HTTP: Content-Length: 15511
----- Hypertext Transfer Protocol -----
HTTP: -----------------------------fb2649be18
HTTP: Content-Disposition: form-data; name="uploadFile"; filename="out.jpg"
HTTP: Content-Type: image/jpeg
HTTP: Data
....[data packets]
The one that works (from the regular post) is as follows:
----- Hypertext Transfer Protocol -----
HTTP: POST /fotoxs/upload.cfm HTTP/1.1
HTTP: Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-gsarcade-launch, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*
HTTP: Referer: http://localhost:8500/fotoxs/test.cfm
HTTP: Accept-Language: nl
HTTP: Content-Type: multipart/form-data; boundary=---------------------------7d41961f201c0
HTTP: Accept-Encoding: gzip, deflate
HTTP: User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
HTTP: Host: newmarc
HTTP: Content-Length: 59022
HTTP: Connection: Keep-Alive
HTTP: Cache-Control: no-cache
----- Hypertext Transfer Protocol -----
HTTP: -----------------------------7d41961f201c0
HTTP: Content-Disposition: form-data; name="FiletoUpload"; filename="D:\My Documents\My Pictures\fotomarc.jpg"
HTTP: Content-Type: image/pjpeg
HTTP: Data
----- Hypertext Transfer Protocol -----
HTTP: HTTP/1.1 100 Continue
HTTP: Server: Microsoft-IIS/5.0
HTTP: Date: Sun, 07 Mar 2004 17:14:41 GMT
....[data packets]
One detail worth mentioning is that I don't read a file from harddisk, I'm streaming it directly to the connection outputstream from an image compression utility. But I can see the data in the ip-packets, and even if that somehow didn't work right, it doesn't explaing the fact that the receiving scripts reports no form fields whatsoever.
Thanks,
Marc -
Java.io.IOException Exception
i just configured the tomcat5.5 server and when i try to run my servlet from JBuilder2006 it gives me the error:
org.apache.catalina.startup. boostrap init classloader
severe: class loader creation threw exception
java.io.IOException : the file name, directory name or volume label syntax is incorrect;
its my first servlet so if u could further i ll be greateful* Log files for Database Tier located under $ORACLE_HOME/appsutil/log/<SID>_<hostname>
i.e. C:\oracle\proddb\9.2.0\appsutil\log\PROD_jccsoracle
XXXXXXX.log - Main Oracle Applications Rapid Install Wizard Install log for DB Tier
(Where XXXXXXXX = MMDDHHMM - Date and Time of run, e.g. 02030450.log)
* Log files for Application Tier located under $APPL_TOP/admin/<SID>_<hostname>/log
XXXXXXX.log - Main Oracle Applications Rapid Install Wizard Install log for Apps Tier
(Where XXXXXXXX = MMDDHHMM - Date and Time of run, e.g. 02030450.log) -
Java.io.IOException in servlet-based file upload
Hi,
I'm running into some problems with Weblogic Server 5.1 on Unix (Solaris), while
trying to do a servlet-based file upload. I'm trying to upload a file to the
server file system through a file upload servlet running inside Weblogic Server
5.1, and I get an exception when I try to create a file on the Unix server
filesystem:
java.io.IOException: Not owner
at java.io.UnixFileSystem.createFileExclusively(Native Method)
at java.io.File.createNewFile(File.java:692)
at com.cysive.filemanagement.UploadFile.save(UploadFile.java:84)
I tried changing the upload location to various places, like directly in the
docroot (myserver/public_html), in my home directory, etc. I am not sure which
owner Weblogic is looking for, because the process is owned by whoever starts
the WL server. And the strange thing is, I am able to create new directories on
the file system, just not files.
When I run the exact code on WinNT, everything works fine... I am able to create
files and directories and the upload goes through smoothly.
I'm thinking there is something I need to be setting in the weblogic.properties
file on Unix by way of permissions/privileges that is not required on WinNT, but
was not able to find anything in the documentation.
Could anyone help, please?
Thanks.
Hrishi
Check what user/group you are running your weblogic server.(check out the user who starts as well as UID/user/group in weblogic.properties file if you have set them).
check out whether that user/group has necessary permission on unix m/c
Hrishi Dixit <[email protected]> wrote:
>
Hi,
I'm running into some problems with Weblogic Server on Unix, while trying to do
a servlet-based file upload. I'm trying to upload a file to the server file
system through a file upload servlet running inside Weblogic Server 5.1, and I
get an exception when I try to create a file on the Unix server filesystem:
java.io.IOException: Not owner
at java.io.UnixFileSystem.createFileExclusively(Native Method)
at java.io.File.createNewFile(File.java:692)
at com.cysive.filemanagement.UploadFile.save(UploadFile.java:84)
I tried changing the upload location to various places, like directly in the
docroot (myserver/public_html), in my home directory, etc. I am not sure which
owner Weblogic is looking for, because the process is owned by whoever starts
the WL server. And the strange thing is, I am able to create new directories on
the file system, just not files.
When I run the exact code on WinNT, everything works fine... I am able to create
files and directories and the upload goes through smoothly.
I'm thinking there is something I need to be setting in the weblogic.properties
file on Unix by way of permissions/privileges that is not required on WinNT, but
was not able to find anything in the documentation.
Could anyone help, please?
Thanks.
Hrishi -
Hi,
I use ridc to check in file into Oracle Center Content server. There is no problem at the beginning. But after running for several days, there is following error.
I must restart my program to solve this issue.
Can anyone help me solve this problem?
Thanks,
Tony
2013-07-11 12:24:31,189 ERROR [BatchEventHandler] com.edocs.common.api.integration.contmgmt.ContentException: oracle.stellent.ridc.protocol.ProtocolEx
ception: java.io.IOException: Input terminated before being able to read line
at com.edocs.common.integration.contmgmt.UCMContentManager.saveContent(UCMContentManager.java:95)
at com.edocs.common.reporting.batch.BatchEventHandler.processBatchRequest(BatchEventHandler.java:284)
at com.edocs.common.reporting.batch.BatchEventHandler.service(BatchEventHandler.java:138)
at com.edocs.common.reporting.tasks.batchprocessor.BatchReportProcessorTask.executeInternal(BatchReportProcessorTask.java:156)
at com.edocs.common.reporting.tasks.batchprocessor.BatchReportProcessorTask.doProcessTask(BatchReportProcessorTask.java:68)
at com.edocs.pwc.tasks.CommonTask.processTask(CommonTask.java:166)
at com.edocs.common.reporting.tasks.batchprocessor.BatchReportProcessorTask_9qwgr6_EOImpl.__WL_invoke(Unknown Source)
at weblogic.ejb.container.internal.SessionRemoteMethodInvoker.invoke(SessionRemoteMethodInvoker.java:40)
at com.edocs.common.reporting.tasks.batchprocessor.BatchReportProcessorTask_9qwgr6_EOImpl.processTask(Unknown Source)
at com.edocs.common.reporting.tasks.batchprocessor.BatchReportProcessorTask_9qwgr6_EOImpl_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.activation.ActivatableServerRef.invoke(ActivatableServerRef.java:85)
at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:522)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:146)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:518)
at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
Caused by: oracle.stellent.ridc.protocol.ProtocolException: java.io.IOException: Input terminated before being able to read line
at oracle.stellent.ridc.protocol.ServiceResponse.getResponseAsBinder(ServiceResponse.java:149)
at oracle.stellent.ridc.protocol.ServiceResponse.getResponseAsBinder(ServiceResponse.java:108)
at com.edocs.common.integration.contmgmt.UCMContentManager.saveContent(UCMContentManager.java:81)
... 17 more
Caused by: java.io.IOException: Input terminated before being able to read line
at oracle.stellent.ridc.model.serialize.HdaBinderSerializer.readLine(HdaBinderSerializer.java:371)
at oracle.stellent.ridc.model.serialize.HdaBinderSerializer.readToEnd(HdaBinderSerializer.java:335)
at oracle.stellent.ridc.model.serialize.HdaBinderSerializer.parseBinder(HdaBinderSerializer.java:165)
at oracle.stellent.ridc.model.serialize.HdaBinderSerializer.parseBinder(HdaBinderSerializer.java:71)
at oracle.stellent.ridc.protocol.ServiceResponse.getResponseAsBinder(ServiceResponse.java:126)
... 19 more
2013-07-11 12:24:33,005 ERROR [BatchEventHandler] com.edocs.common.api.integration.contmgmt.ContentException: oracle.stellent.ridc.protocol.ProtocolEx
ception: java.io.IOException: Input terminated before being able to read line
at com.edocs.common.integration.contmgmt.UCMContentManager.saveContent(UCMContentManager.java:95)
at com.edocs.common.reporting.batch.BatchEventHandler.processBatchRequest(BatchEventHandler.java:284)
at com.edocs.common.reporting.batch.BatchEventHandler.service(BatchEventHandler.java:138)
at com.edocs.common.reporting.tasks.batchprocessor.BatchReportProcessorTask.executeInternal(BatchReportProcessorTask.java:156)
at com.edocs.common.reporting.tasks.batchprocessor.BatchReportProcessorTask.doProcessTask(BatchReportProcessorTask.java:68)
at com.edocs.pwc.tasks.CommonTask.processTask(CommonTask.java:166)
at com.edocs.common.reporting.tasks.batchprocessor.BatchReportProcessorTask_9qwgr6_EOImpl.__WL_invoke(Unknown Source)
at weblogic.ejb.container.internal.SessionRemoteMethodInvoker.invoke(SessionRemoteMethodInvoker.java:40)
at com.edocs.common.reporting.tasks.batchprocessor.BatchReportProcessorTask_9qwgr6_EOImpl.processTask(Unknown Source)
at com.edocs.common.reporting.tasks.batchprocessor.BatchReportProcessorTask_9qwgr6_EOImpl_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.activation.ActivatableServerRef.invoke(ActivatableServerRef.java:85)
at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:522)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:146)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:518)
at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
Caused by: oracle.stellent.ridc.protocol.ProtocolException: java.io.IOException: Input terminated before being able to read line
at oracle.stellent.ridc.protocol.ServiceResponse.getResponseAsBinder(ServiceResponse.java:149)
at oracle.stellent.ridc.protocol.ServiceResponse.getResponseAsBinder(ServiceResponse.java:108)
at com.edocs.common.integration.contmgmt.UCMContentManager.saveContent(UCMContentManager.java:81)
... 17 more
Caused by: java.io.IOException: Input terminated before being able to read line
at oracle.stellent.ridc.model.serialize.HdaBinderSerializer.readLine(HdaBinderSerializer.java:371)
at oracle.stellent.ridc.model.serialize.HdaBinderSerializer.readToEnd(HdaBinderSerializer.java:335)
at oracle.stellent.ridc.model.serialize.HdaBinderSerializer.parseBinder(HdaBinderSerializer.java:165)
at oracle.stellent.ridc.model.serialize.HdaBinderSerializer.parseBinder(HdaBinderSerializer.java:71)
at oracle.stellent.ridc.protocol.ServiceResponse.getResponseAsBinder(ServiceResponse.java:126)
... 19 more
2013-07-11 12:24:37,870 ERROR [BatchEventHandler] com.edocs.common.api.integration.contmgmt.ContentException: oracle.stellent.ridc.protocol.ProtocolEx
ception: java.io.IOException: Input terminated before being able to read line
at com.edocs.common.integration.contmgmt.UCMContentManager.saveContent(UCMContentManager.java:95)
at com.edocs.common.reporting.batch.BatchEventHandler.processBatchRequest(BatchEventHandler.java:284)
at com.edocs.common.reporting.batch.BatchEventHandler.service(BatchEventHandler.java:138)
at com.edocs.common.reporting.tasks.batchprocessor.BatchReportProcessorTask.executeInternal(BatchReportProcessorTask.java:156)
at com.edocs.common.reporting.tasks.batchprocessor.BatchReportProcessorTask.doProcessTask(BatchReportProcessorTask.java:68)
at com.edocs.pwc.tasks.CommonTask.processTask(CommonTask.java:166)
at com.edocs.common.reporting.tasks.batchprocessor.BatchReportProcessorTask_9qwgr6_EOImpl.__WL_invoke(Unknown Source)
at weblogic.ejb.container.internal.SessionRemoteMethodInvoker.invoke(SessionRemoteMethodInvoker.java:40)
at com.edocs.common.reporting.tasks.batchprocessor.BatchReportProcessorTask_9qwgr6_EOImpl.processTask(Unknown Source)
at com.edocs.common.reporting.tasks.batchprocessor.BatchReportProcessorTask_9qwgr6_EOImpl_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.activation.ActivatableServerRef.invoke(ActivatableServerRef.java:85)
at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:522)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:146)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:518)
at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
Caused by: oracle.stellent.ridc.protocol.ProtocolException: java.io.IOException: Input terminated before being able to read line
at oracle.stellent.ridc.protocol.ServiceResponse.getResponseAsBinder(ServiceResponse.java:149)
at oracle.stellent.ridc.protocol.ServiceResponse.getResponseAsBinder(ServiceResponse.java:108)
at com.edocs.common.integration.contmgmt.UCMContentManager.saveContent(UCMContentManager.java:81)
... 17 more
Caused by: java.io.IOException: Input terminated before being able to read line
at oracle.stellent.ridc.model.serialize.HdaBinderSerializer.readLine(HdaBinderSerializer.java:371)
at oracle.stellent.ridc.model.serialize.HdaBinderSerializer.readToEnd(HdaBinderSerializer.java:335)
at oracle.stellent.ridc.model.serialize.HdaBinderSerializer.parseBinder(HdaBinderSerializer.java:165)
at oracle.stellent.ridc.model.serialize.HdaBinderSerializer.parseBinder(HdaBinderSerializer.java:71)
at oracle.stellent.ridc.protocol.ServiceResponse.getResponseAsBinder(ServiceResponse.java:126)
... 19 more
2013-07-11 12:24:39,722 ERROR [BatchEventHandler] com.edocs.common.api.integration.contmgmt.ContentException: oracle.stellent.ridc.protocol.ProtocolEx
ception: java.io.IOException: Input terminated before being able to read line
at com.edocs.common.integration.contmgmt.UCMContentManager.saveContent(UCMContentManager.java:95)
at com.edocs.common.reporting.batch.BatchEventHandler.processBatchRequest(BatchEventHandler.java:284)
at com.edocs.common.reporting.batch.BatchEventHandler.service(BatchEventHandler.java:138)
at com.edocs.common.reporting.tasks.batchprocessor.BatchReportProcessorTask.executeInternal(BatchReportProcessorTask.java:156)
at com.edocs.common.reporting.tasks.batchprocessor.BatchReportProcessorTask.doProcessTask(BatchReportProcessorTask.java:68)
at com.edocs.pwc.tasks.CommonTask.processTask(CommonTask.java:166)
at com.edocs.common.reporting.tasks.batchprocessor.BatchReportProcessorTask_9qwgr6_EOImpl.__WL_invoke(Unknown Source)
at weblogic.ejb.container.internal.SessionRemoteMethodInvoker.invoke(SessionRemoteMethodInvoker.java:40)
at com.edocs.common.reporting.tasks.batchprocessor.BatchReportProcessorTask_9qwgr6_EOImpl.processTask(Unknown Source)
at com.edocs.common.reporting.tasks.batchprocessor.BatchReportProcessorTask_9qwgr6_EOImpl_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.activation.ActivatableServerRef.invoke(ActivatableServerRef.java:85)
at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:522)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:146)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:518)
at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
Caused by: oracle.stellent.ridc.protocol.ProtocolException: java.io.IOException: Input terminated before being able to read line
at oracle.stellent.ridc.protocol.ServiceResponse.getResponseAsBinder(ServiceResponse.java:149)
at oracle.stellent.ridc.protocol.ServiceResponse.getResponseAsBinder(ServiceResponse.java:108)
at com.edocs.common.integration.contmgmt.UCMContentManager.saveContent(UCMContentManager.java:81)
... 17 more
Caused by: java.io.IOException: Input terminated before being able to read line
at oracle.stellent.ridc.model.serialize.HdaBinderSerializer.readLine(HdaBinderSerializer.java:371)
at oracle.stellent.ridc.model.serialize.HdaBinderSerializer.readToEnd(HdaBinderSerializer.java:335)
at oracle.stellent.ridc.model.serialize.HdaBinderSerializer.parseBinder(HdaBinderSerializer.java:165)
at oracle.stellent.ridc.model.serialize.HdaBinderSerializer.parseBinder(HdaBinderSerializer.java:71)
at oracle.stellent.ridc.protocol.ServiceResponse.getResponseAsBinder(ServiceResponse.java:126)
... 19 moreThe following is my testing code.
package ebilling;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.security.SecureRandom;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.List;
import java.util.Properties;
import java.util.concurrent.LinkedBlockingQueue;
import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
import oracle.stellent.ridc.IdcClient;
import oracle.stellent.ridc.IdcClientManager;
import oracle.stellent.ridc.IdcContext;
import oracle.stellent.ridc.model.DataBinder;
import oracle.stellent.ridc.model.DataObject;
import oracle.stellent.ridc.model.DataResultSet;
import oracle.stellent.ridc.model.TransferFile;
import oracle.stellent.ridc.protocol.ServiceResponse;
import org.apache.commons.lang.StringUtils;
public class UCMContentManager {
* Check in a file into a Oracle WebCenter Content Server and return content id of uploaded content item in Oracle WebCenter Content Server.
* @param properties The Oracle WebCenter Content Server connection properties.
* @param contentFile This file will be checked in a Oracle WebCenter Content Server.
* @param path The location path of checked in file in Oracle WebCenter Content Server. This path includes the file name.<br>
* For example, "/folder1/folder2/file1.txt". The "file1.txt" is the file name part. <br>
* The file name will be used as dDocName in Oracle WebCenter Server. It must be unique.<br>
* @throws ContentException The exception when uploading file into Oracle WebCenter Content Server.
* @return The content id of uploaded content item in Oracle WebCenter Content Server.
public String saveContent(Properties properties, File contentFile, String path) throws ContentException{
if(path.endsWith(SLASH)) {
throw new ContentException("Require file name in Content Management Server");
if(!path.startsWith(SLASH)) {
throw new ContentException("The file store path in Content Management Server should be absolute.");
if (path.indexOf("//") != -1) {
path = path.replace("//", SLASH);
String[] paths = path.split(SLASH);
String[] parents = new String[paths.length - 1];
String itemName = paths[paths.length-1];
System.arraycopy(paths, 0, parents, 0, paths.length-1);
ServiceResponse response = null;
try {
IdcClientManager manager = new IdcClientManager();
IdcClient client = manager.createClient(properties.getProperty(URL_PROPERTY));
client.getConfig().setProperty ("http.library", "apache4");
String user = properties.getProperty(USERNAME_PROPERTY);
String pwd = properties.getProperty(PASSWORD_PROPERTY);
IdcContext connectionContext = new IdcContext(user, pwd);
pwd = null;
//create the parent folders if they don't exist
String folderGUID = makeFolders(properties, parents);
//check in the file
DataBinder requestData = client.createBinder();
requestData.putLocal("IdcService", "CHECKIN_UNIVERSAL");
requestData.putLocal("IsJava", "1");
requestData.putLocal("dDocName", itemName);
requestData.putLocal("dDocTitle", itemName);
requestData.putLocal("dDocType", "Binary");
requestData.putLocal("dSecurityGroup", "Public");
requestData.addFile("primaryFile", new TransferFile(contentFile));
response = client.sendRequest(connectionContext, requestData);
DataBinder responseData = response.getResponseAsBinder();
//String did = responseData.getLocal("dID");
String dDocname = responseData.getLocal("dDocName");
closeResponse(response);
//link the file in a folder
requestData = client.createBinder();
requestData.putLocal("IdcService", "FLD_CREATE_FILE");
requestData.putLocal("fParentGUID", folderGUID);
String fileType = "owner";
requestData.putLocal("fFileType", fileType);
requestData.putLocal("dDocName", dDocname);
response = client.sendRequest(connectionContext, requestData);
return dDocname;
} catch (Throwable e) {
throw new ContentException(e);
} finally{
closeResponse(response);
public void deleteContent(Properties properties, String contentId) throws ContentException{
List<String> didList = getDIds(properties, contentId);
contentId = contentId.toUpperCase();
ServiceResponse response = null;
try {
IdcClientManager manager = new IdcClientManager();
IdcClient client = manager.createClient(properties.getProperty(URL_PROPERTY));
client.getConfig().setProperty ("http.library", "apache4");
String user = properties.getProperty(USERNAME_PROPERTY);
String pwd = properties.getProperty(PASSWORD_PROPERTY);
IdcContext connectionContext = new IdcContext(user, pwd);
pwd = null;
DataBinder requestData = null;
for(int i=0; i<didList.size(); i++) {
String did = didList.get(i);
requestData = client.createBinder();
requestData.putLocal("IdcService", "DELETE_DOC");
requestData.putLocal("dDocName", contentId);
requestData.putLocal("dID", did);
response = client.sendRequest(connectionContext, requestData);
closeResponse(response);
//delete parent folder
// try {
// requestData = client.createBinder();
// requestData.putLocal("IdcService", "FLD_DELETE");
// requestData.putLocal("item1", "path:" + parentPath);
// requestData.putLocal("constructDialog", "1");
// response = client.sendRequest(connectionContext, requestData);
// } catch (Exception e) {
// // TODO: handle exception
} catch (Exception e) {
throw new ContentException(e);
} finally {
closeResponse(response);
public int getFileCountInFolder(Properties properties, String path) throws ContentException{
ServiceResponse response = null;
try {
IdcClientManager manager = new IdcClientManager();
IdcClient client = manager.createClient(properties.getProperty(URL_PROPERTY));
client.getConfig().setProperty ("http.library", "apache4");
String user = properties.getProperty(USERNAME_PROPERTY);
String pwd = properties.getProperty(PASSWORD_PROPERTY);
IdcContext connectionContext = new IdcContext(user, pwd);
pwd = null;
DataBinder binder = client.createBinder();
binder.putLocal("IdcService", "FLD_BROWSE");
binder.putLocal("path", path);
response = client.sendRequest(connectionContext, binder);
DataBinder result = response.getResponseAsBinder();
String num = result.getLocal("numFiles");
return Integer.parseInt(num);
catch (Exception e) {
throw new ContentException(e);
} finally {
closeResponse(response);
private String getFolderGUID(Properties properties, String path) throws ContentException {
ServiceResponse response = null;
String tmpFolderGUID = null;
try {
IdcClientManager manager = new IdcClientManager();
IdcClient client = manager.createClient(properties.getProperty(URL_PROPERTY));
client.getConfig().setProperty ("http.library", "apache4");
String user = properties.getProperty(USERNAME_PROPERTY);
String pwd = properties.getProperty(PASSWORD_PROPERTY);
IdcContext connectionContext = new IdcContext(user, pwd);
pwd = null;
DataBinder requestData = client.createBinder();
requestData.putLocal("IdcService", "FLD_INFO");
requestData.putLocal("path", path);
response = client.sendRequest(connectionContext,
requestData);
DataResultSet result = response.getResponseAsBinder().getResultSet("FolderInfo");
tmpFolderGUID = result.getRows().get(0).get("fFolderGUID")
.toString();
if(StringUtils.isBlank(tmpFolderGUID))
tmpFolderGUID = null;
} catch (Exception e) {
} finally {
closeResponse(response);
return tmpFolderGUID;
public boolean deleteFolder(Properties properties, String path) throws ContentException {
if(getFolderGUID(properties, path)==null)
return false;
int fileCount = getFileCountInFolder(properties, path);
ServiceResponse response = null;
if(fileCount==0) {
try {
IdcClientManager manager = new IdcClientManager();
IdcClient client = manager.createClient(properties.getProperty(URL_PROPERTY));
client.getConfig().setProperty ("http.library", "apache4");
String user = properties.getProperty(USERNAME_PROPERTY);
String pwd = properties.getProperty(PASSWORD_PROPERTY);
IdcContext connectionContext = new IdcContext(user, pwd);
pwd = null;
DataBinder binder = client.createBinder();
binder.putLocal("IdcService", "FLD_DELETE");
binder.putLocal("item1", "path:" + path);
binder.putLocal("constructDialog", "1");
response = client.sendRequest(connectionContext, binder);
return true;
catch (Exception e) {
throw new ContentException(e);
} finally {
closeResponse(response);
} else {
return false;
private String buildPath(String[] arr, int i) {
StringBuilder buf = new StringBuilder();
for(int j=0; j<=i; j++) {
buf.append(arr[j]);
buf.append(SLASH);
return buf.toString();
private String makeFolders(Properties properties, String[] paths) throws ContentException{
String folderGUID = "";
ServiceResponse response = null;
try {
IdcClientManager manager = new IdcClientManager();
IdcClient client = manager.createClient(properties.getProperty(URL_PROPERTY));
client.getConfig().setProperty ("http.library", "apache4");
String user = properties.getProperty(USERNAME_PROPERTY);
String pwd = properties.getProperty(PASSWORD_PROPERTY);
IdcContext connectionContext = new IdcContext(user, pwd);
pwd = null;
String parentFolderGUID = null;
for(int i=0; i<paths.length; i++) {
String fullPath = buildPath(paths, i);
DataBinder requestData = null;
parentFolderGUID = folderGUID;
folderGUID = getFolderGUID(properties, fullPath);
boolean exists = folderGUID!=null;
DataResultSet result = null;
if(!exists) {
//create new folder
try {
requestData = client.createBinder();
requestData.putLocal("IdcService", "FLD_CREATE_FOLDER");
requestData.putLocal("fParentGUID", parentFolderGUID);
requestData.putLocal("fFolderName", paths[i]);
response = client.sendRequest(connectionContext, requestData);
} finally {
closeResponse(response);
//retrieve folderGUID of new folder
folderGUID = getFolderGUID(properties, fullPath);
} catch (Throwable e) {
throw new ContentException(e);
} finally{
closeResponse(response);
return folderGUID;
public List<String> getDIds(Properties properties, String contentId) throws ContentException{
contentId = contentId.toUpperCase();
List<String> didList = new ArrayList<String>();
ServiceResponse response = null;
try {
IdcClientManager manager = new IdcClientManager();
IdcClient client = manager.createClient(properties.getProperty(URL_PROPERTY));
client.getConfig().setProperty ("http.library", "apache4");
String user = properties.getProperty(USERNAME_PROPERTY);
String pwd = properties.getProperty(PASSWORD_PROPERTY);
IdcContext connectionContext = new IdcContext(user, pwd);
pwd = null;
DataBinder requestData = null;
requestData = client.createBinder();
requestData.putLocal("IdcService", "GET_SEARCH_RESULTS");
requestData.putLocal("SortField", "dInDate");
requestData.putLocal("SortType", "DESC");
requestData.putLocal("QueryText", "dDocName <matches> `" + contentId +"`");
response = client.sendRequest(connectionContext, requestData);
DataBinder result = response.getResponseAsBinder();
DataResultSet resultSet = result.getResultSet("SearchResults");
for (DataObject dataObject : resultSet.getRows()) {
// System.out.println("ID : " + dataObject.get("dID")+" dDocName : "
// + dataObject.get("dDocName") + " Title : " + dataObject.get("dDocTitle")
// + " Author : " + dataObject.get("dDocAuthor") + " Security Group : "
// + dataObject.get("dSecurityGroup"));
String did = dataObject.get("dID");
didList.add(did);
//break;
} catch (Exception e) {
throw new ContentException(e);
} finally{
closeResponse(response);
return didList;
* Get the file content represented by contentId from a Oracle WebCenter Content Server.
* The return value is the input stream of retrieved file content.
* @param properties The Oracle WebCenter Content Server connection properties.
* @param contentId The Content ID for the content item in Oracle WebCenter Content Server.
* @throws ContentException The exception when retrieving content from Oracle WebCenter Content Server.
* @return The input stream of retrieved file content.
public InputStream retrieveContent(Properties properties, String contentId) throws ContentException{
try {
return new FileInputStream(retrieveContentFile(properties, contentId));
} catch (Throwable e) {
throw new ContentException(e);
public File retrieveContentFile(Properties properties, String contentId) throws ContentException {
contentId = contentId.toUpperCase();
ServiceResponse response = null;
try {
IdcClientManager manager = new IdcClientManager();
IdcClient client = manager.createClient(properties.getProperty(URL_PROPERTY));
client.getConfig().setProperty ("http.library", "apache4");
String user = properties.getProperty(USERNAME_PROPERTY);
String pwd = properties.getProperty(PASSWORD_PROPERTY);
IdcContext connectionContext = new IdcContext(user, pwd);
pwd = null;
DataBinder binder = client.createBinder();
binder.putLocal("IdcService", "GET_FILE");
//binder.putLocal("dID", dID);
binder.putLocal("dDocName", contentId);
binder.putLocal("RevisionSelectionMethod", "Latest");
response = client.sendRequest(connectionContext, binder);
InputStream in = null;
OutputStream out = null;
String edxhome = System.getProperty("edx.home");
File tmpParent = new File(edxhome);
tmpParent = new File(tmpParent, "Output");
tmpParent = new File(tmpParent, "tmp");
tmpParent.mkdirs();
File tmpFile = File.createTempFile("down_", "_ucm", tmpParent);
tmpFile.deleteOnExit();
try {
in = response.getResponseStream();
out = new FileOutputStream(tmpFile);
byte[] buf = new byte[1024];
int read = -1;
while((read = in.read(buf))!=-1) {
out.write(buf, 0, read);
} finally{
try {
if(in!=null)
in.close();
} catch (Exception e2) {
try {
if(out!=null)
out.close();
} catch (Exception e2) {
return tmpFile;
} catch (Throwable e) {
throw new ContentException(e);
} finally{
closeResponse(response);
private void closeResponse(ServiceResponse response) {
if(response!=null) {
try {
response.close();
} catch (Exception e) {
private static final String SLASH = "/";
private static final String URL_PROPERTY = "contentServerURL";
private static final String USERNAME_PROPERTY = "contentServerUser";
private static final String PASSWORD_PROPERTY = "contentServerPassword";
static volatile boolean flag = false;
static class UploadTask implements Runnable{
public void run() {
try {
while(!flag) {
UCMContentManager manager = new UCMContentManager();
Properties properties = new Properties();
properties.put(URL_PROPERTY, "https://slc402124:16201/cs/idcplg");
properties.put(USERNAME_PROPERTY, "weblogic");
properties.put(PASSWORD_PROPERTY, "weblogic1");
File contentFile = new File("C:/toding/mypro/UCM/test.txt");
String parentPath = "/new/test/multiThreadUpload/";
String location = makePath(parentPath);
manager.saveContent(properties, contentFile, location);
System.out.println(location);
Thread.sleep(5000);
} catch (Exception e) {
e.printStackTrace();
flag = true;
public static void main(String[] args) throws Exception{
ThreadPoolExecutor executor = new ThreadPoolExecutor(10, 10, 60, TimeUnit.SECONDS,
new LinkedBlockingQueue<Runnable>());
for(int i=0; i<10; i++) {
UploadTask uploadTask = new UploadTask();
executor.execute(uploadTask);
while(!flag) {
Thread.sleep(5000);
executor.shutdown();
public static String makePath(String parentPath) {
StringBuilder buf = new StringBuilder();
buf.append(parentPath);
if(!parentPath.endsWith("/")) {
buf.append("/");
Calendar rightNow = Calendar.getInstance();
String pattern = "yyyyMMdd";
SimpleDateFormat simDateForm = new SimpleDateFormat(pattern);
String dateStr = simDateForm.format((rightNow).getTime());
pattern = "HHmmssSSS";
simDateForm = new SimpleDateFormat(pattern);
String timeStr = simDateForm.format((rightNow).getTime());
buf.append(dateStr);
buf.append("/");
buf.append(timeStr);
buf.append("_");
buf.append(random.nextInt(10000));
String finalLocation = buf.toString();
return finalLocation;
private static SecureRandom random = new SecureRandom(); -
My file upload java application working fine in tomcat 7 but not working in weblogic 11
Hi All,
My file upload java application successfully run in tomcat 7 . But I could not run it in Weblogic 11. Getting following error message . Please help.
Please contact your administrator.org.springframework.beans.NullValueInNestedPathException: Invalid property 'fileData[0]' of bean class [com.techm.util.UploadItem]: Cannot access indexed value in property referenced in indexed property path 'fileData[0]': returned null
at org.springframework.beans.BeanWrapperImpl.setPropertyValue(BeanWrapperImpl.java:681)
at org.springframework.beans.BeanWrapperImpl.setPropertyValue(BeanWrapperImpl.java:651)
at org.springframework.beans.AbstractPropertyAccessor.setPropertyValues(AbstractPropertyAccessor.java:78)
at org.springframework.validation.DataBinder.applyPropertyValues(DataBinder.java:587)
at org.springframework.validation.DataBinder.doBind(DataBinder.java:489)
at org.springframework.web.bind.WebDataBinder.doBind(WebDataBinder.java:149)
at org.springframework.web.bind.ServletRequestDataBinder.bind(ServletRequestDataBinder.java:110)
at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter$ServletHandlerMethodInvoker.doBind(AnnotationMethodHandlerAdapter.java:566)
at org.springframework.web.bind.annotation.support.HandlerMethodInvoker.resolveHandlerArguments(HandlerMethodInvoker.java:213)
at org.springframework.web.bind.annotation.support.HandlerMethodInvoker.invokeHandlerMethod(HandlerMethodInvoker.java:132)
at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.invokeHandlerMethod(AnnotationMethodHandlerAdapter.java:326)
at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.handle(AnnotationMethodHandlerAdapter.java:313)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:875)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:807)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:511)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:301)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:119)
at java.security.AccessController.doPrivileged(Native Method)
at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:324)
at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:460)
at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:103)
at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:171)
at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:163)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3730)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3696)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2273)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2179)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1490)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)What version of spring are you using in tomcat?
What version of WLS are you using.
What JDK are you using in both environments?
Is the issue random? or can you reproduce it at will?
Thanks
Luz -
IOException File upload not enabled
Hi all,
Has anyone seen this exception when using uploading a file. I have tried both
Jason Hunter's multipart request and jspsmart code. I am using Weblogic 5.1 with
SP 8 running on NT server 4.0.
It sounds to me like there is a configuration setting to fix this problem, don't
personally know where and what the syntax is. Please help.
Below is the stack I get:
java.io.IOException: UPLOAD_NOT_ENABLED
at com.bluemartini.html.HTMLBaseServlet.prepareRequest(HTMLBaseServlet.java:768)
at com.bluemartini.html.HTMLBaseServlet.handleRequest(HTMLBaseServlet.java:475)
at com.bluemartini.html.HTMLBaseServlet.service(HTMLBaseServlet.java:376)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:106)
at weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletContextImpl.java:907)
at weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletContextImpl.java:851)
at weblogic.servlet.internal.ServletContextManager.invokeServlet(ServletContextManager.java:252)
at weblogic.socket.MuxableSocketHTTP.invokeServlet(MuxableSocketHTTP.java:364)
at weblogic.socket.MuxableSocketHTTP.execute(MuxableSocketHTTP.java:252)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:129)
Thanks for your help.
Salimahi Ashish,
<Triggers>
<asp:PostBackTrigger ControlID="btnUpdate"/>
</Triggers>
use like this but entire page will done postback
Regards,
A.Ashok kumar -
Hi All,
We are on Netweaver 7.01 SP14. (well I understand we are way behind patch levels, but a simple file upload should be working ?/)
We are trying to upload (HTML &/ Image) a file in one of the KM's public folder.
As and when we select folder and click on upload we get the below message:
Below is the error trace details:
Full Message Text
com.sapportals.wdf.WdfException
at com.sapportals.wcm.control.edit.ResourceUploadControl.render(ResourceUploadControl.java:688)
at com.sapportals.wdf.layout.HorizontalLayout.renderControls(HorizontalLayout.java:42)
at com.sapportals.wdf.stack.Pane.render(Pane.java:155)
at com.sapportals.wdf.stack.PaneStack.render(PaneStack.java:73)
at com.sapportals.wdf.layout.HorizontalLayout.renderPanes(HorizontalLayout.java:73)
at com.sapportals.wdf.stack.Pane.render(Pane.java:158)
at com.sapportals.wdf.stack.PaneStack.render(PaneStack.java:73)
at com.sapportals.wdf.layout.HorizontalLayout.renderPanes(HorizontalLayout.java:73)
at com.sapportals.wdf.stack.Pane.render(Pane.java:158)
at com.sapportals.wdf.stack.PaneStack.render(PaneStack.java:73)
at com.sapportals.wdf.layout.HorizontalLayout.renderPanes(HorizontalLayout.java:73)
at com.sapportals.wdf.stack.Pane.render(Pane.java:158)
at com.sapportals.wdf.stack.PaneStack.render(PaneStack.java:73)
at com.sapportals.wdf.WdfCompositeController.internalRender(WdfCompositeController.java:709)
at com.sapportals.wdf.WdfCompositeController.buildComposition(WdfCompositeController.java:674)
at com.sapportals.htmlb.AbstractCompositeComponent.preRender(AbstractCompositeComponent.java:33)
at com.sapportals.htmlb.Container.preRender(Container.java:120)
at com.sapportals.htmlb.Container.preRender(Container.java:120)
at com.sapportals.htmlb.Container.preRender(Container.java:120)
at com.sapportals.portal.htmlb.PrtContext.render(PrtContext.java:408)
at com.sapportals.htmlb.page.DynPage.doOutput(DynPage.java:238)
at com.sapportals.wcm.portal.component.base.KMControllerDynPage.doOutput(KMControllerDynPage.java:134)
at com.sapportals.htmlb.page.PageProcessor.handleRequest(PageProcessor.java:133)
at com.sapportals.portal.htmlb.page.PageProcessorComponent.doContent(PageProcessorComponent.java:134)
at com.sapportals.wcm.portal.component.base.ControllerComponent.doContent(ControllerComponent.java:88)
at com.sapportals.portal.prt.component.AbstractPortalComponent.serviceDeprecated(AbstractPortalComponent.java:209)
at com.sapportals.portal.prt.component.AbstractPortalComponent.service(AbstractPortalComponent.java:114)
at com.sapportals.portal.prt.core.PortalRequestManager.callPortalComponent(PortalRequestManager.java:328)
at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:136)
at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:189)
at com.sapportals.portal.prt.component.PortalComponentResponse.include(PortalComponentResponse.java:215)
at com.sapportals.portal.prt.pom.PortalNode.service(PortalNode.java:645)
at com.sapportals.portal.prt.core.PortalRequestManager.callPortalComponent(PortalRequestManager.java:328)
at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:136)
at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:189)
at com.sapportals.portal.prt.core.PortalRequestManager.runRequestCycle(PortalRequestManager.java:753)
at com.sapportals.portal.prt.connection.ServletConnection.handleRequest(ServletConnection.java:249)
at com.sapportals.portal.prt.dispatcher.Dispatcher$doService.run(Dispatcher.java:557)
at java.security.AccessController.doPrivileged(Native Method)
at com.sapportals.portal.prt.dispatcher.Dispatcher.service(Dispatcher.java:430)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:386)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:364)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:1064)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:265)
at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:175)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(Native Method)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:104)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:176)
--- Nested WDF Exception -----------------------
java.util.MissingResourceException: Can't find resource for bundle java.util.PropertyResourceBundle, key xtlt_Required
at java.util.ResourceBundle.getObject(ResourceBundle.java:327)
at java.util.ResourceBundle.getObject(ResourceBundle.java:324)
at java.util.ResourceBundle.getString(ResourceBundle.java:287)
at com.sapportals.wcm.util.resource.ResourceBundles.getString(ResourceBundles.java:55)
at com.sapportals.wcm.control.base.WcmBaseControl.getBaseBundleString(WcmBaseControl.java:150)
at com.sapportals.wcm.control.base.WcmBaseControl.getBaseBundleString(WcmBaseControl.java:176)
at com.sapportals.wcm.control.edit.ResourceUploadControl.renderUploadFileContent(ResourceUploadControl.java:773)
at com.sapportals.wcm.control.edit.ResourceUploadControl.render(ResourceUploadControl.java:655)
at com.sapportals.wdf.layout.HorizontalLayout.renderControls(HorizontalLayout.java:42)
at com.sapportals.wdf.stack.Pane.render(Pane.java:155)
at com.sapportals.wdf.stack.PaneStack.render(PaneStack.java:73)
at com.sapportals.wdf.layout.HorizontalLayout.renderPanes(HorizontalLayout.java:73)
at com.sapportals.wdf.stack.Pane.render(Pane.java:158)
at com.sapportals.wdf.stack.PaneStack.render(PaneStack.java:73)
at com.sapportals.wdf.layout.HorizontalLayout.renderPanes(HorizontalLayout.java:73)
at com.sapportals.wdf.stack.Pane.render(Pane.java:158)
at com.sapportals.wdf.stack.PaneStack.render(PaneStack.java:73)
at com.sapportals.wdf.layout.HorizontalLayout.renderPanes(HorizontalLayout.java:73)
at com.sapportals.wdf.stack.Pane.render(Pane.java:158)
at com.sapportals.wdf.stack.PaneStack.render(PaneStack.java:73)
at com.sapportals.wdf.WdfCompositeController.internalRender(WdfCompositeController.java:709)
at com.sapportals.wdf.WdfCompositeController.buildComposition(WdfCompositeController.java:674)
at com.sapportals.htmlb.AbstractCompositeComponent.preRender(AbstractCompositeComponent.java:33)
at com.sapportals.htmlb.Container.preRender(Container.java:120)
at com.sapportals.htmlb.Container.preRender(Container.java:120)
at com.sapportals.htmlb.Container.preRender(Container.java:120)
at com.sapportals.portal.htmlb.PrtContext.render(PrtContext.java:408)
at com.sapportals.htmlb.page.DynPage.doOutput(DynPage.java:238)
at com.sapportals.wcm.portal.component.base.KMControllerDynPage.doOutput(KMControllerDynPage.java:134)
at com.sapportals.htmlb.page.PageProcessor.handleRequest(PageProcessor.java:133)
at com.sapportals.portal.htmlb.page.PageProcessorComponent.doContent(PageProcessorComponent.java:134)
at com.sapportals.wcm.portal.component.base.ControllerComponent.doContent(ControllerComponent.java:88)
at com.sapportals.portal.prt.component.AbstractPortalComponent.serviceDeprecated(AbstractPortalComponent.java:209)
at com.sapportals.portal.prt.component.AbstractPortalComponent.service(AbstractPortalComponent.java:114)
at com.sapportals.portal.prt.core.PortalRequestManager.callPortalComponent(PortalRequestManager.java:328)
at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:136)
at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:189)
at com.sapportals.portal.prt.component.PortalComponentResponse.include(PortalComponentResponse.java:215)
at com.sapportals.portal.prt.pom.PortalNode.service(PortalNode.java:645)
at com.sapportals.portal.prt.core.PortalRequestManager.callPortalComponent(PortalRequestManager.java:328)
at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:136)
at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:189)
at com.sapportals.portal.prt.core.PortalRequestManager.runRequestCycle(PortalRequestManager.java:753)
at com.sapportals.portal.prt.connection.ServletConnection.handleRequest(ServletConnection.java:249)
at com.sapportals.portal.prt.dispatcher.Dispatcher$doService.run(Dispatcher.java:557)
at java.security.AccessController.doPrivileged(Native Method)
at com.sapportals.portal.prt.dispatcher.Dispatcher.service(Dispatcher.java:430)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:386)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:364)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:1064)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:265)
at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:175)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(Native Method)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:104)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:176)Hi Vijay,
Thanks for the quick reply.
I have gone through the notes 1535201 & now on 1606563 after your advise.
Both the notes says the fix is available on 7.01 after SP 07 and we are on SP 14 already.
Also just in case I did checked with our basis and they confirmed we are a head and we have the above notes in our release already.
Unfortunately the notes are not the solution to the investigation till date.
Thanks,
Sai -
File upload java errors...HEEELPPP!
All was working fine for months, now getting java errors in my ADDT. Mostly related to file uploads, or image uploads. I found that I don't get these errors in older sites that I've worked with, but I've created a new site and started from scratch and I'm still getting them.
Here are the errors and what I'm doing:
*I go insert record form wizard (in ADDT)
*One field is a date, others are text, one is an integer, one is a file field
That works ok up to here.
*Then I choose ADDT > File upload. I get the following error immediately: "While executing canApplyserverBehavior in kb_FileUpload.htm, a javascript error occured."
*I click ok, the wizard box attempts to load and it give me the error: "While executing onLoad in kb_FileUpload.htm, the following javascript errors occured:
At line 354 of the file "Macintosh HD:Applications:Adobe Dreamweaver CS3:Configuration:Shared:DeveloperToolbox:classes:triggerUtil.js":
TypeError: hash[transactionColumn[k]].push is not a fuction.
I'm totally tearing my hair out, not to mention not hitting deadlines with this... can anyone help. I've tried removing the fileCache, rebuilding the site cache, removing and rebuilding the includes folder, removing and reinstalling ADDT. HEEEEEELLLLLPPP.Hi
Please look into this about the destination
Pathname of directory in which to upload the file. If not an
absolute path (starting a with a drive letter and a colon, or a
forward or backward slash), it is relative to the ColdFusion
temporary directory, which is returned by the GetTempDirectory
function. -
Java.io.IOException: Too many open files while deploying in soa 11g
hi all,
I am getting a strange error while deploying any composite .. it's a hello world kinda composite but while i am trying to deploy it i am getting "java.io.IOException: Too many open files" while deployment.. i have tried to deploy it in 2-3 ways but all of them resulted in the same error..bouncing the soa server might be an option but can someone give an insight as why it is happening and can it be resolved without restarting the server..
Thanksyes..so this problem is with unix only ..coz i previously worked in Windows ..never got this problem..
Maybe you are looking for
-
I created an apple id online on my computer, all is well and it is functional, however when i enter this same id and password into my iphone 5c it continues to ask me to sign in. Any suggestions on what i need to do?
-
How to call ME21n Screen in webdynpro once you click any button
Hi exports, I have created one webdynpro application..In first view i have one button which have action...Once i click that button it should go to next view where it should diaplay standard Transaction ME21n screen..where i need to e
-
How Do i unmute the Microphone input on Satellite Pro A120?
Hi I have a SAT PRO A120, when i connect a mic it pics it up but theres no sound from it, how do i un-mute or activate it, iv looked in the windows volume controler and Toshiba sound controler, but no luck Many thanks Robert Dawson
-
XSLT Mapping - user defined Extension function
Hi to all, can somebody helps me, please? I need an own function, that can be used by the XSL Mapper. First I have only tried the sample given in Path <BPELPM>\integration\orabpel\samples\demos\XSLMapper\ExtensionFunctions There is a java file with t
-
REUSE_ALV_GRID_DISPLAY layout problem
Hi All, I have a report which can output two different ALV grid depending upon the option selected on selection screen. For example say I have selection screen with option button for Vendor report and Customer report. When user select Vendor report o