IFS-30002

The problem is that when i try to upload a file from a client into the iFS usign both de WebUI and the WindowsUI iFS throws an exception:
iFS-30002: Unable to create NewLibraryObject
After that one, an other error is displayed:
java.lang.exception: No path specified
Thanks for your help
null

When you receive this error, what messages are generated in the log files?
You can locate the log files on the host machine running Oracle iFS in the directory $ORACLE_HOME/ifs/log.
null

Similar Messages

  • IFS-30002 error using API

    Pertinent files to follow. Here is the stact trace:
    Oracle.ifs.common.IfsException: IFS-30002: Unable to create new LibraryObject
    java.sql.SQLException: ORA-01401: inserted value too large for column
    at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:168)
    at oracle.jdbc.oci8.OCIDBAccess.check_error(OCIDBAccess.java:1597)
    at oracle.jdbc.oci8.OCIDBAccess.executeFetch(OCIDBAccess.java:1209)
    at oracle.jdbc.oci8.OCIDBAccess.parseExecuteFetch(OCIDBAccess.java:1321)
    at oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:1446)
    at oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:1371)
    at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1900)
    at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:363)
    at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:407)
    at oracle.ifs.server.S_LibraryObject.insertRow(S_LibraryObject.java:2812)
    at oracle.ifs.server.S_LibraryObject.insertRows(S_LibraryObject.java:2727)
    at oracle.ifs.server.OperationState.executeAtomicOperations(OperationState.java:487)
    at oracle.ifs.server.S_LibraryObject.createInstance(S_LibraryObject.java:2374)
    at oracle.ifs.server.S_LibrarySession.newLibraryObject(S_LibrarySession.java:6808)
    at oracle.ifs.server.S_LibrarySession.newPublicObject(S_LibrarySession.java:6849)
    at oracle.ifs.server.S_LibrarySession.newPublicObject(S_LibrarySession.java:6831)
    at oracle.ifs.server.S_LibrarySession.DMNewPublicObject(S_LibrarySession.java:6619)
    at oracle.ifs.beans.LibrarySession.DMNewPublicObject(LibrarySession.java:7226)
    at oracle.ifs.beans.LibrarySession.NewPublicObject(LibrarySession.java:4795)
    at oracle.ifs.beans.LibrarySession.createPublicObject(LibrarySession.java:2789)
    at net.anagraph.watermark.FinalDocument.addSignature(FinalDocument.java:139)
    null

    package net.anagraph.watermark;
    import oracle.ifs.beans.*;
    import oracle.ifs.common.*;
    import oracle.ifs.server.*;
    import java.io.*;
    import java.util.*;
    public class FinalDocument extends Document {
    private LibrarySession ifsSession;
    private PublicObject thisPO;
    public static final String CLASS_NAME = "FINALDOCUMENT";
    public static final String REFERENCE = "REFERENCE";
    public static final String MESSAGE_DIGEST = "MESSAGEDIGEST";
    public static final String ORIGINAL_DOCUMENT = "ORIGINALDOCUMENT";
    public static final String SIGNING_EXPIRATION_DATE = "SIGNINGEXPIRATIONDATE";
    public static final String EXECUTION_DATE = "EXECUTIONDATE";
    public static final String SIGNERS = "SIGNERS";
    public static final String SIGNATURES = "SIGNATURES";
    public static final String REJECTIONS = "REJECTIONS";
    public FinalDocument(LibrarySession session, Long id, Long classId, S_LibraryObjectData data) throws IfsException {
    super(session, id, classId, data);
    ifsSession = session;
    try {
    thisPO = ifsSession.getPublicObject(id);
    } catch (Exception e) {
    thisPO = null;
    public String getReference() throws IfsException {
    AttributeValue av = thisPO.getAttribute(REFERENCE);
    return av.getString(ifsSession);
    public String getMessageDigest() throws IfsException {
    AttributeValue av = thisPO.getAttribute(MESSAGE_DIGEST);
    return av.getString(ifsSession);
    public Date getSigningExpirationDate() throws IfsException {
    AttributeValue av = thisPO.getAttribute(SIGNING_EXPIRATION_DATE);
    return av.getDate(ifsSession);
    public Date getExecutionDate() throws IfsException {
    AttributeValue av = thisPO.getAttribute(EXECUTION_DATE);
    return av.getDate(ifsSession);
    public DirectoryUser getSigners(int signerNum) throws IfsException {
    AttributeValue av = thisPO.getAttribute(SIGNERS);
    return(DirectoryUser)av.getPublicObjectArray(ifsSession, signerNum);
    public DirectoryUser[] getSigners() throws IfsException {
    DirectoryUser[] du = new DirectoryUser[0];
    System.out.println("********************* getSigners()");
    System.out.println("*********************** getAttribute()");
    AttributeValue av = thisPO.getAttribute(SIGNERS);
    System.out.println("*********************** getPublicObjectArray()");
    PublicObjectInterface[] po = av.getPublicObjectArray(ifsSession);
    if (po!=null) {
    System.out.println("********************* # Signers: " + po.length);
    System.out.println("*********************** new DirectoryUser[]");
    du = new DirectoryUser[po.length];
    for (int i=0; i<po.length; i++) {
    du[i] = (DirectoryUser)po;
    System.out.println("************************* " + du[i].getDescription());
    return du;
    public void addSigner(DirectoryUser newSigner) throws IfsException {
    // Build new array with all signers and one extra element
    DirectoryUser allSigners[] = this.getSigners();
    DirectoryUser newSigners[] = new DirectoryUser[allSigners.length+1];
    for (int i=0; i<allSigners.length; i++) {
    // If signer already in list, exit
    if (newSigner.equals(allSigners[i])) return;
    newSigners[i] = allSigners[i];
    // Put new signer in extra element
    newSigners[allSigners.length] = newSigner;
    // Save new array as attribute
    AttributeValue av = AttributeValue.newAttributeValue(newSigners);
    thisPO.setAttribute(SIGNERS, av);
    /** @todo Add UtilityFolder handling as Signers are added */
    public void removeSigner(DirectoryUser signer) throws IfsException {
    DirectoryUser allSigners[] = this.getSigners();
    DirectoryUser newSigners[] = new DirectoryUser[allSigners.length-1];
    int h = 0;
    for (int i=0; i<allSigners.length; i++) {
    if (!allSigners[i].equals(signer)) {
    if (h<=i) return;
    newSigners[h] = allSigners[i];
    h++;
    // Save new array as attribute
    AttributeValue av = AttributeValue.newAttributeValue(newSigners);
    thisPO.setAttribute(SIGNERS, av);
    /** @todo Add UtilityFolder handling as Signers are removed */
    public SignatureObject[] getSignatureArray() throws IfsException {
    AttributeValue av = thisPO.getAttribute(SIGNATURES);
    SignatureObject[] sigs = (SignatureObject[])av.getPublicObjectArray(ifsSession);
    if (sigs==null) sigs = new SignatureObject[0];
    return sigs;
    public void addSignature(SignatureObjectDefinition newSignature) throws IfsException {
    try {
    // Build new array with all Signatures and one extra element
    SignatureObject allSignatures[] = this.getSignatureArray();
    SignatureObject newSignatures[] = new SignatureObject[allSignatures.length+1];
    for (int i=0; i<allSignatures.length; i++) {
    newSignatures[i] = allSignatures[i];
    // Put new Signature in extra element
    newSignatures[allSignatures.length] = (SignatureObject)ifsSession.createPublicObject(newSignature);
    // Save new array as attribute
    AttributeValue av = AttributeValue.newAttributeValue(newSignatures);
    thisPO.setAttribute(SIGNATURES, av);
    // Remove signer from list
    removeSigner(newSignatures[allSignatures.length].getSigner());
    } catch (IfsException e) {
    System.out.println(e.toString());
    e.printStackTrace(System.out);
    throw e;
    public RejectionObject[] getRejectionArray() throws IfsException {
    AttributeValue av = thisPO.getAttribute(REJECTIONS);
    RejectionObject[] rejs = (RejectionObject[])av.getPublicObjectArray(ifsSession);
    if (rejs==null) rejs = new RejectionObject[0];
    return rejs;
    public void addRejection(RejectionObjectDefinition newRejection) throws IfsException {
    // Build new array with all Rejections and one extra element
    RejectionObject allRejections[] = this.getRejectionArray();
    RejectionObject newRejections[] = new RejectionObject[allRejections.length+1];
    for (int i=0; i<allRejections.length; i++) {
    newRejections[i] = allRejections[i];
    // Put new Rejection in extra element
    newRejections[allRejections.length] = (RejectionObject)ifsSession.createPublicObject(newRejection);
    // Save new array as attribute
    AttributeValue av = AttributeValue.newAttributeValue(newRejections);
    thisPO.setAttribute(REJECTIONS, av);
    // Remove signer from list
    removeSigner(newRejections[allRejections.length].getSignatureObject().getSigner());
    public boolean isVersionable() {
    return false;
    null

  • Another Post concerning Error IFS-30002

    If I try to Upload a XML file containing the Attribute declaration below:
    <Attribute>
    <Name>FunctionalityImplementedFixed</Name>
    <DataType>String</DataType>
    <DataLength>512</DataLength>
    </Attribute>
    I get the Error IFS-30002.
    Can someone tell me whats wrong with this declaration. If I comment it, all works fine!
    Are there any Restrictions for the Length of the Attribute Name?
    null

    Reproduced the Problem. It is much easier to debug problems when we have the full stack trace.
    Eg in your case....
    Loading the following Type Definition
    <CLASSOBJECT>
    <NAME>TEST_OBJECT_01</NAME>
    <SUPERCLASS REFTYPE="NAME">DOCUMENT</SUPERCLASS>
    <ATTRIBUTES>
    <Attribute>
    <Name>FunctionalityImplementedFixed</Name>
    <DataType>String</DataType>
    <DataLength>512</DataLength>
    </Attribute>
    </ATTRIBUTES>
    </CLASSOBJECT>
    causes the following error.
    Thu Jul 27 12:16:53 PDT 2000: \Temp\XML Long Attribute Name Definition.xml:
    oracle.ifs.common.IfsException: IFS-30002: Unable to create new LibraryObject
    java.sql.SQLException: ORA-01401: inserted value too large for column
    at java.lang.Throwable.<init>(Compiled Code)
    at java.lang.Exception.<init>(Compiled Code)
    at java.sql.SQLException.<init>(SQLException.java:43)
    at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java)
    at oracle.jdbc.oci8.OCIDBAccess.check_error(Compiled Code)
    at oracle.jdbc.oci8.OCIDBAccess.executeFetch(Compiled Code)
    at oracle.jdbc.oci8.OCIDBAccess.parseExecuteFetch(Compiled Code)
    at oracle.jdbc.driver.OracleStatement.executeNonQuery(Compiled Code)
    at oracle.jdbc.driver.OracleStatement.doExecuteOther(Compiled Code)
    at oracle.jdbc.driver.OracleStatement.doExecuteWithBatch(Compiled Code)
    at oracle.jdbc.driver.OracleStatement.doExecute(Compiled Code)
    at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(Compiled Code)
    at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(Compiled Code)
    at oracle.jdbc.driver.OraclePreparedStatement.execute(Compiled Code)
    at oracle.ifs.server.S_LibraryObject.insertRow(Compiled Code)
    at oracle.ifs.server.S_LibraryObject.insertRows(Compiled Code)
    at oracle.ifs.server.OperationState.executeAtomicOperations(Compiled Code)
    at oracle.ifs.server.S_ClassObject.extendedPostInsert(Compiled Code)
    at oracle.ifs.server.S_LibraryObject.postInsert(S_LibraryObject.java:1341)
    at oracle.ifs.server.OperationState.executeAtomicOperations(Compiled Code)
    at oracle.ifs.server.S_LibraryObject.createInstance(S_LibraryObject.java:2348)
    at oracle.ifs.server.S_LibrarySession.newLibraryObject(S_LibrarySession.java:6596)
    at oracle.ifs.server.S_LibrarySession.newSchemaObject(S_LibrarySession.java:6707)
    at oracle.ifs.server.S_LibrarySession.newSchemaObject(S_LibrarySession.java:6689)
    at oracle.ifs.server.S_LibrarySession.DMNewSchemaObject(S_LibrarySession.java:6515)
    at oracle.ifs.beans.LibrarySession.DMNewSchemaObject(LibrarySession.java:6997)
    at oracle.ifs.beans.LibrarySession.NewSchemaObject(LibrarySession.java:4600)
    at oracle.ifs.beans.LibrarySession.createSchemaObject(LibrarySession.java:2584)
    at oracle.ifs.beans.parsers.SimpleXmlParserImpl.createObject(Compiled Code)
    at oracle.ifs.beans.parsers.SimpleXmlParserImpl.createObject(SimpleXmlParserImpl.java:394)
    at oracle.ifs.beans.parsers.SimpleXmlParser.readTopLevelObject(SimpleXmlParser.java:490)
    at oracle.ifs.beans.parsers.SimpleXmlParser.traverseTree(Compiled Code)
    at oracle.ifs.beans.parsers.XmlParser.parse(Compiled Code)
    at ifs.demo.common.xml.NewXmlParser.parse(Compiled Code)
    at oracle.ifs.utils.common.ParserHelper.parseExistingDocument(ParserHelper.java:352)
    at oracle.ifs.protocols.ntfs.server.FileProxy.parseFile(FileProxy.java:744)
    at oracle.ifs.protocols.ntfs.server.FileProxy.closeFile(Compiled Code)
    at oracle.ifs.protocols.ntfs.server.FileProxy.run(Compiled Code)
    I was able to get this information by using SMB / NT File System Driver to load the XML File. When an XML file fails to load under SMB the entire Verbose Stack Trace is dumped into a 'log' file in the same location as the XML was placed.
    In this case changing the Type File so that the DatabaseObjectName tag is used to provide a valid column name fixed the problem.

  • Subclassing via XML: IFS-30002

    Hi,
    I have a problem subclassing via XML files:
    After having created a new class, and deleted it (with iFS Manager), I can't reload an other class with the same name (IFS-30002:Unable to create new LibraryObject)
    thanks,
    Xavier

    I did my subclassing through the Web interface, so I can't catch the exception.
    But JWS gives some info:
    javawebserver: oracle.ifs.common.IfsException: IFS-30002: Unable to create new LibraryObje
    ct
    javawebserver:
    javawebserver: at java.lang.Throwable.<init>(Compiled Code)
    javawebserver: at java.lang.Exception.<init>(Compiled Code)
    javawebserver: at java.sql.SQLException.<init>(SQLException.java:43)
    javawebserver: at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java)
    javawebserver: at oracle.jdbc.oci8.OCIDBAccess.check_error(Compiled Code)
    javawebserver: at oracle.jdbc.oci8.OCIDBAccess.executeFetch(Compiled Code)
    javawebserver: at oracle.jdbc.driver.OracleStatement.executeNonQuery(Compiled Code)
    javawebserver: at oracle.jdbc.driver.OracleStatement.doExecuteOther(Compiled Code)
    javawebserver: at oracle.jdbc.driver.OracleStatement.doExecuteWithBatch(Compiled Code)
    javawebserver: at oracle.jdbc.driver.OracleStatement.doExecute(Compiled Code)
    javawebserver: at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(Compiled Code)
    javawebserver: at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(Compiled Code)
    javawebserver: at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatem
    ent.java)
    javawebserver: at oracle.ifs.server.S_LibraryObject.insertRow(S_LibraryObject.java:2789)
    javawebserver: at oracle.ifs.server.S_LibraryObject.insertRows(Compiled Code)
    javawebserver: at oracle.ifs.server.OperationState.executeAtomicOperations(Compiled Code)
    javawebserver: at oracle.ifs.server.S_ClassObject.extendedPostInsert(Compiled Code)
    javawebserver: at oracle.ifs.server.S_LibraryObject.postInsert(S_LibraryObject.java:1344)
    javawebserver: at oracle.ifs.server.OperationState.executeAtomicOperations(Compiled Code)
    javawebserver: at oracle.ifs.server.S_LibraryObject.createInstance(S_LibraryObject.java:2
    351)
    javawebserver: at oracle.ifs.server.S_LibrarySession.newLibraryObject(S_LibrarySession.ja
    va:6596)
    javawebserver: at oracle.ifs.server.S_LibrarySession.newSchemaObject(S_LibrarySession.jav
    a:6707)
    javawebserver: at oracle.ifs.server.S_LibrarySession.newSchemaObject(S_LibrarySession.jav
    a:6689)
    javawebserver: at oracle.ifs.server.S_LibrarySession.DMNewSchemaObject(S_LibrarySession.j
    ava:6515)
    javawebserver: at oracle.ifs.beans.LibrarySession.DMNewSchemaObject(LibrarySession.java:7
    168)
    javawebserver: at oracle.ifs.beans.LibrarySession.NewSchemaObject(LibrarySession.java:476
    9)
    javawebserver: at oracle.ifs.beans.LibrarySession.createSchemaObject(LibrarySession.java:
    2731)
    javawebserver: at
    javawebserver: at
    javawebserver: at
    javawebserver: at
    javawebserver: at
    javawebserver: at
    javawebserver: at oracle.ifs.utils.common.ParserHelper.parseExistingDocument(ParserHelper
    .java:352)
    javawebserver: at oracle.ifs.clients.webui.FileUtils.parseAndDelete(FileUtils.java:714)
    javawebserver: at ifs.webui._jsps._upload2._jspService(Compiled Code)
    javawebserver: at oracle.ifs.protocols.http.jsp.pagecompile.jsp.runtime.HttpJspBase.servi
    ce(HttpJspBase.java:94)
    javawebserver: at javax.servlet.http.HttpServlet.service(Compiled Code)
    javawebserver: at oracle.ifs.protocols.http.jsp.IfsJspServlet.runServlet(IfsJspServlet.ja
    va:865)
    javawebserver: at oracle.ifs.protocols.http.jsp.IfsJspServlet.processJspPage(Compiled Cod
    e)
    javawebserver: at oracle.ifs.protocols.http.jsp.IfsJspServlet.service(IfsJspServlet.java:
    240)
    javawebserver: at javax.servlet.http.HttpServlet.service(Compiled Code)
    javawebserver: at com.sun.server.ServletState.callService(Compiled Code)
    javawebserver: at com.sun.server.ServletManager.callServletService(Compiled Code)
    javawebserver: at com.sun.server.ProcessingState.invokeTargetServlet(Compiled Code)
    javawebserver: at com.sun.server.http.HttpProcessingState.execute(Compiled Code)
    javawebserver: at com.sun.server.http.stages.Runner.process(Compiled Code)
    javawebserver: at com.sun.server.ProcessingSupport.process(Compiled Code)
    javawebserver: at com.sun.server.Service.process(Compiled Code)
    javawebserver: at com.sun.server.http.HttpServiceHandler.handleRequest(Compiled Code)
    javawebserver: at com.sun.server.http.HttpServiceHandler.handleRequest(Compiled Code)
    javawebserver: at com.sun.server.HandlerThread.run(Compiled Code)
    javawebserver:
    The xml file I upload doesn't seem to be responsible for problems, but here it is:
    <?xml version='1.0' encoding = 'ISO-8859-1' standalone='yes'?>
    <!--Module.xml-->
    <CLASSOBJECT>
    <Name>Module</Name>
    <Description> Module </Description>
    <Superclass Reftype='name'>Document</Superclass>
    <BeanClassPath>ifs.demo.topdoc.Module</BeanClassPath>
    <Attributes>
    <ATTRIBUTE>
    <Name> Donnees </Name>
    <DataType> String </DataType>
    <DataLength> 128 </DataLength>
    </ATTRIBUTE>
    <ATTRIBUTE>
    <Name> ApplicabiliteDocumentaire </Name>
    <DataType> String </DataType>
    <DataLength> 12 </DataLength>
    </ATTRIBUTE>
    <ATTRIBUTE>
    <Name> UniteDeProduction </Name>
    <DataType> String </DataType>
    <DataLength> 12 </DataLength>
    </ATTRIBUTE>
    <ATTRIBUTE>
    <Name> Langue </Name>
    <DataType> String </DataType>
    <DataLength> 5 </DataLength>
    </ATTRIBUTE>
    </Attributes>
    </CLASSOBJECT>
    Since the corresponding bean has to be deployed afterward, it must not have any influence...
    thanks

  • Error while trying to register user to iFS 9.0.1

    Hi ,
    We are getting following error while trying to register user with our custom application. When I checked the forums it says the unique constraint might be the problem but I don't see any unique constraint violation in my exception trace. We are using 9.0.1 with 9.0.1 Database.
    Here is the stack trace:
    oracle.ifs.common.IfsException: IFS-30002: Unable to create new LibraryObject
    java.sql.SQLException: ORA-00600: internal error code, arguments: [25012], [10], [0], [], [], [], [], []
         at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:184)
         at oracle.jdbc.oci8.OCIDBAccess.check_error(OCIDBAccess.java:1768)
         at oracle.jdbc.oci8.OCIDBAccess.executeFetch(OCIDBAccess.java:1380)
         at oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:1868)
         at oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:1787)
         at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2377)
         at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:427)
         at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:492)
         at oracle.ifs.server.S_LibrarySession.execute(S_LibrarySession.java:14319)
         at oracle.ifs.server.S_LibraryObject.insertRow(S_LibraryObject.java:3251)
         at oracle.ifs.server.S_LibraryObject.insertRows(S_LibraryObject.java:3150)
         at oracle.ifs.server.OperationState.executeAtomicOperations(OperationState.java:487)
         at oracle.ifs.server.S_LibraryObject.createInstance(S_LibraryObject.java:2716)
         at oracle.ifs.server.S_LibrarySession.newLibraryObject(S_LibrarySession.java:7922)
         at oracle.ifs.server.S_LibrarySession.newPublicObject(S_LibrarySession.java:7963)
         at oracle.ifs.server.S_LibrarySession.newPublicObject(S_LibrarySession.java:7945)
         at oracle.ifs.server.S_LibrarySession.DMNewPublicObject(S_LibrarySession.java:7604)
         at oracle.ifs.beans.LibrarySession.DMNewPublicObject(LibrarySession.java:7901)
         at oracle.ifs.beans.LibrarySession.NewPublicObject(LibrarySession.java:5345)
         at oracle.ifs.beans.LibrarySession.createPublicObject(LibrarySession.java:2973)
         at oracle.ifs.adk.user.UserManager.createDirectoryUser(UserManager.java:1122)
         at oracle.ifs.adk.user.UserManager.createUser(UserManager.java:987)
         at com.cisco.as.ifs.management.fndUserManager.createUser(fndUserManager.java:131)
    Thanks
    Rajesh Basawa

    Rajesh,
    I was wondering did you manage to get this problem fixed we are having a similar problem when creating an iFS object; the following is the stack trace
    oracle.ifs.common.IfsException: IFS-30002: Unable to create new LibraryObject
    [Mon Jun 16 14:19:47 BST 2003] stderr: java.sql.SQLException: ORA-00600: internal error code, arguments: [25012], [5], [0], [], [], [], [], []
    [Mon Jun 16 14:19:47 BST 2003] stderr:
    [Mon Jun 16 14:19:47 BST 2003] stderr:      at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:180)
    [Mon Jun 16 14:19:47 BST 2003] stderr:      at oracle.jdbc.oci8.OCIDBAccess.check_error(OCIDBAccess.java:1759)
    [Mon Jun 16 14:19:47 BST 2003] stderr:      at oracle.jdbc.oci8.OCIDBAccess.executeFetch(OCIDBAccess.java:1371)
    [Mon Jun 16 14:19:47 BST 2003] stderr:      at oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:1852)
    [Mon Jun 16 14:19:47 BST 2003] stderr:      at oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:1771)
    [Mon Jun 16 14:19:47 BST 2003] stderr:      at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2361)
    [Mon Jun 16 14:19:47 BST 2003] stderr:      at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:422)
    [Mon Jun 16 14:19:47 BST 2003] stderr:      at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:487)
    [Mon Jun 16 14:19:47 BST 2003] stderr:      at oracle.ifs.server.S_LibrarySession.execute(S_LibrarySession.java:14319)
    [Mon Jun 16 14:19:47 BST 2003] stderr:      at oracle.ifs.server.S_LibraryObject.insertRow(S_LibraryObject.java:3251)
    [Mon Jun 16 14:19:47 BST 2003] stderr:      at oracle.ifs.server.S_LibraryObject.insertRows(S_LibraryObject.java:3150)
    [Mon Jun 16 14:19:47 BST 2003] stderr:      at oracle.ifs.server.OperationState.executeAtomicOperations(OperationState.java:487)
    [Mon Jun 16 14:19:47 BST 2003] stderr:      at oracle.ifs.server.S_LibraryObject.createInstance(S_LibraryObject.java:2716)
    [Mon Jun 16 14:19:47 BST 2003] stderr:      at oracle.ifs.server.S_LibrarySession.newLibraryObject(S_LibrarySession.java:7922)
    [Mon Jun 16 14:19:47 BST 2003] stderr:      at oracle.ifs.server.S_LibrarySession.newPublicObject(S_LibrarySession.java:7963)
    [Mon Jun 16 14:19:47 BST 2003] stderr:      at oracle.ifs.server.S_LibrarySession.newPublicObject(S_LibrarySession.java:7945)
    [Mon Jun 16 14:19:47 BST 2003] stderr:      at oracle.ifs.server.S_LibrarySession.DMNewPublicObject(S_LibrarySession.java:7604)
    [Mon Jun 16 14:19:47 BST 2003] stderr:      at oracle.ifs.beans.LibrarySession.DMNewPublicObject(LibrarySession.java:7901)
    [Mon Jun 16 14:19:47 BST 2003] stderr:      at oracle.ifs.beans.LibrarySession.NewPublicObject(LibrarySession.java:5345)
    [Mon Jun 16 14:19:47 BST 2003] stderr:      at oracle.ifs.beans.LibrarySession.createPublicObject(LibrarySession.java:2973)

  • Where did the iFS Javadoc webpages go?

    The Javadoc webpages of iFS APIs seem to have vaporized early last week. Can someone please point to their new home? they were not easy to find in the first place, but now I am having no luck at all.
    Thanks,
    -Jeff

    I'm trying very hard to just create a new versioned document in IFS 9.0.2 via APIs. Unfortunately, I'm running into problems at many different points:
    If I don't specify a content string, I get:
    oracle.ifs.common.IfsException: IFS-30002: Unable to create new LibraryObject
    oracle.ifs.common.IfsException: IFS-31803: No Content specified in ContentObjectDefinition
    If I leave the file out of the DocDef, I get a different error:
    java.lang.NoSuchMethodError: long oracle.jdbc.dbaccess.DBAccess.lobWrite(oracle.sql.BLOB, long, byte[])
    Even if this were to work, embedded within the code, there is quirky behaviour coming from the order of establishing Documents, VersionsSeries, and Families. I know you guys are trying to maintain flexability, but the structures listed in the book have hidden sequential dependencies (difficult coupling issues). It's not well documented, making these APIs very difficult to use without a lot of insider knowledge. It's great that you all can agree as to where I should go for examples, but you have not clearly communicated to me where I can see these examples. This is the same as when I asked for javadocs. please be kinder to me, I can't read your minds or participate in your internal communication. Don't get me wrong, I appreciate all the help, but I am not making great progress on this side. With all of the quirkiness my company has experienced with iFS's Java APIs, we've decided to isolate and eliminate 80% of the extra methods provided. We are trying to wrap the remaining 20% into a highly reliable Interface & Implementation. The I/F is easy to define, but even just sifting through and using the ifs bean classes for implementation is proving difficult.
    com.rsaiia.common.pdm.Folder aDir = testFileRepository.getRootFolder()
    .getFolder("home")
    .getFolder("jeffr")
    .getFolder("SecondTest");
    com.rsaiia.common.pdm.myDoc = aDir.createDocument("BungBucket.unc",
    "UNCLASSIFIED_DOCUMENT",
    new File("C:\\docs\\VersionTest.txt"));
    public com.lmco.rsaiia.common.pdm.Document
    createDocument(String theDocName, String theContentTypeName, File theFolderPath)
    throws PDMException {
    com.lmco.rsaiia.common.pdm.Document theDoc;
    if (theDocName == null)
    throw new NullPointerException("No Document Name");
    if (theContentTypeName == null)
    throw new NullPointerException("No ContentType Name");
    if (theFolderPath == null)
    throw new NullPointerException("No File Name");
    String description = theDocName + " Description";
    // The content (file to be contained in document) is associated in the
    // createDocumentDefinition call
    try{
    DocumentDefinition def = createDocumentDefinition(theDocName, description,
    theFolderPath, theContentTypeName);
    def.setAddToFolderOption(myFolder);
    // the more general variant of createDocument does the rest
    theDoc = getDocument(createDocument(def));
    theDoc.addAttribute(m_SOURCE_FILE_LOCATION_ATTRIBUTE); // should already be there but just in case
    PublicObject aFileObject = myFolder.findPublicObjectByPath(theDocName);
    Family aFamily = (Family)aFileObject;
    myFileSystem.makeVersioned(aFileObject); // make all created files versioned
    VersionSeries aVSeries = aFileObject.getFamily().getPrimaryVersionSeries();
    VersionDescription aVersDesc = aVSeries.getLastVersionDescription();
    System.out.println("Created Document " + theDocName + " In " + theFolderPath);
    return theDoc;
    catch (Exception e){
    throw new PDMException(e);
         * create a DocumentDefinition.
         * @param docName          the name of the new document
         * @param classname          the name of the classobject for the new document
    * @param filePath          a local file system path to content for
         * this document
    * @param parent          the folder that will become the parent of the
         * new document
         * @return                    the created Document
         * @exception IfsException if operation fails.
    private DocumentDefinition createDocumentDefinition (String name,
              String description, File filePath, String contentType)
              throws IfsException {
    if ( name == null )
    throw new NullPointerException("Next time, offer a document name");
              DocumentDefinition def = new DocumentDefinition(getSession());
              def.setAttribute(oracle.ifs.beans.Document.NAME_ATTRIBUTE,
                   AttributeValue.newAttributeValue(name));
              def.setAttribute(oracle.ifs.beans.Document.DESCRIPTION_ATTRIBUTE,
                   AttributeValue.newAttributeValue(description));
              // Set the class only if it's specified
              ClassObject co = (contentType == null)
                   ? null : lookupClassObject(contentType);
              if (co != null)
                   def.setClassObject(co);
              // Set the content if specified
    if (filePath != null)
    applyContentSettings(def, filePath.toString());
              return def;
    Gets the file extension from the supplied file name and
                   uses this to infer the Format which is written to the supplied
    document definition object
    private void applyContentSettings(DocumentDefinition def, String filePath)
              throws IfsException
              if ((filePath != null) && (def != null))
                   String ext = null;
                   int pos = filePath.lastIndexOf(".");
                   if (pos > 0 && pos < filePath.length())
                        ext = filePath.substring(pos + 1);
                   if (ext == null)
                        // default to "txt"
                        ext = "txt";
                   // set the based on the extension from the filepath
                   Format fmt = lookupFormatByExtension(ext);
                   def.setFormat(fmt);
                   def.setContentPath(filePath);
    * Creates a new folder in the directory specified by the oParentFolder input parameter
    * @param Document a Oracle Document.
    * @return     PDMDocument
    * @throws IfsException if operation fails.
    private com.lmco.rsaiia.common.pdm.Document getDocument (oracle.ifs.beans.Document theDoc)
    throws PDMException {
    try{
    return new PDMDocument(theDoc,getSession(),getFileSystem());
    catch (Exception e){
    throw new PDMException(e);
    private oracle.ifs.beans.Document createDocument(DocumentDefinition def) // was public
    throws IfsException     {
    oracle.ifs.beans.Document theDoc =
    (oracle.ifs.beans.Document) getSession().createPublicObject(def);
              return theDoc;

  • IFS-30027: Insufficient access to create a SchemaObject

    I receive the following error when I to parse a XML file. IFS-
    21005 indicates, I need administrator mode. What I want know is
    this misleading and I just need to modify the ACL or does the
    administrator need grant a higher level of access?
    oracle.ifs.common.IfsException: IFS-30002: Unable to create new
    LibraryObject oracle.ifs.common.IfsException: IFS-30027:
    Insufficient access to create a SchemaObject
    oracle.ifs.common.IfsException: IFS-21005: Administrator mode is
    required for this operation
    Thanks,
    Art

    If the XML file you are uploading is specifying the creation of a
    SchemaObject (e.g. a ClassObject, ValueDomain, ClassDomain, or
    ValueDefault), the session must be in admin mode. There is no
    way to circumvent this by changing an ACL.
    regards,
    dave

  • Upload Image Files into IFS

    Dear Members,
    I am trying to upload files from my local disk to the IFS. There is no problem about uploading txt files. But i could not upload the image files like ".tif".
    Is there anyone who can help me urgently please?
    Here is the part of my source code..
    DocumentDefinition newDocDef = new DocumentDefinition(ifsSession);
    newDocDef.setName(filename);
    newDocDef.setContentPath(localpath);
    newDocDef.setAddToFolderOption(runtime);
    Document doc = (Document)ifsSession.createPublicObject(newDocDef);

    Dear Sir,
    This topic is very urgent for me, and I will be very happy for your help.
    I have changed my code like this.
    ClassObject co = classUtils.lookupClassObject("DOCUMENT");
    Collection c = ifsSession.getFormatExtensionCollection();
    Format f = (Format) c.getItems("tif");
    DocumentDefinition newDocDef = new DocumentDefinition(ifsSession);
    newDocDef.setContentPath(localpath);
    newDocDef.setAddToFolderOption(runtime);
    newDocDef.setName(filename);
    newDocDef.setClassObject(co);
    newDocDef.setFormat(f);
    TieDocument doc = (TieDocument)ifsSession.createPublicObject(newDocDef);
    And the error message is here.
    oracle.ifs.common.IfsException:
    IFS-30002: Unable to create new LibraryObject oracle.ifs.common.IfsException:
    IFS-32225: Error storing reference to content object 22,432 in media InterMediaBlob java.sql.SQLException:
    ORA-00911: invalid character
         void oracle.jdbc.dbaccess.DBError.throwSqlException(java.lang.String, java.lang.String, int)           DBError.java:187      void oracle.jdbc.ttc7.TTIoer.processError()           TTIoer.java:241      void oracle.jdbc.ttc7.Oall7.receive()           Oall7.java:543      void oracle.jdbc.ttc7.TTC7Protocol.doOall7(byte, byte, int, byte[], oracle.jdbc.dbaccess.DBType[], oracle.jdbc.dbaccess.DBData[], int, oracle.jdbc.dbaccess.DBType[], oracle.jdbc.dbaccess.DBData[], int)           TTC7Protocol.java:1477      int oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(oracle.jdbc.dbaccess.DBStatement, byte, byte[], oracle.jdbc.dbaccess.DBDataSet, int, oracle.jdbc.dbaccess.DBDataSet, int)           TTC7Protocol.java:888      void oracle.jdbc.driver.OracleStatement.executeNonQuery(boolean)           OracleStatement.java:2004      void oracle.jdbc.driver.OracleStatement.doExecuteOther(boolean)           OracleStatement.java:1924      void oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout()           OracleStatement.java:2562      int oracle.jdbc.driver.OraclePreparedStatement.executeUpdate()           OraclePreparedStatement.java:452      boolean oracle.jdbc.driver.OraclePreparedStatement.execute()           OraclePreparedStatement.java:526      boolean oracle.ifs.server.S_LibrarySession.execute(java.sql.PreparedStatement)           S_LibrarySession.java:14518      oracle.sql.BLOB oracle.ifs.server.S_MediaBlob.createBlobReference(java.lang.Long, java.lang.String)           S_MediaBlob.java:398      java.io.OutputStream oracle.ifs.server.S_MediaBlob.getOutputStream(java.lang.Long, java.lang.String)           S_MediaBlob.java:240      java.io.OutputStream oracle.ifs.server.S_MediaBlob.getOutputStream(java.lang.Long)           S_MediaBlob.java:225      java.lang.Long oracle.ifs.server.S_Media.setContentStream(java.io.InputStream)           S_Media.java:1741      void oracle.ifs.server.S_Media.setContent(oracle.ifs.server.S_LibraryObjectDefinition)           S_Media.java:1680      void oracle.ifs.server.S_ContentObject.setContent(oracle.ifs.server.S_LibraryObjectDefinition)           S_ContentObject.java:402      void oracle.ifs.server.S_ContentObject.extendedPreInsert(oracle.ifs.server.OperationState, oracle.ifs.server.S_LibraryObjectDefinition)           S_ContentObject.java:239      void oracle.ifs.server.S_LibraryObject.preInsert(oracle.ifs.server.OperationState, oracle.ifs.server.S_LibraryObjectDefinition)           S_LibraryObject.java:1644      oracle.ifs.server.S_LibraryObjectData oracle.ifs.server.S_LibraryObject.createInstance(oracle.ifs.server.OperationState, oracle.ifs.server.S_LibraryObjectDefinition)           S_LibraryObject.java:2711      oracle.ifs.common.AttributeValue oracle.ifs.server.S_LibrarySession.createSystemObjectInstance(oracle.ifs.server.OperationState, oracle.ifs.server.S_LibraryObjectDefinition)           S_LibrarySession.java:8365      void oracle.ifs.server.S_Document.setContentObject(oracle.ifs.server.OperationState, oracle.ifs.server.S_LibraryObjectDefinition, oracle.ifs.server.S_ContentQuota, boolean)           S_Document.java:475      void oracle.ifs.server.S_Document.extendedPreInsert(oracle.ifs.server.OperationState, oracle.ifs.server.S_LibraryObjectDefinition)           S_Document.java:313      void oracle.ifs.server.S_LibraryObject.preInsert(oracle.ifs.server.OperationState, oracle.ifs.server.S_LibraryObjectDefinition)           S_LibraryObject.java:1644      oracle.ifs.server.S_LibraryObjectData oracle.ifs.server.S_LibraryObject.createInstance(oracle.ifs.server.OperationState, oracle.ifs.server.S_LibraryObjectDefinition)           S_LibraryObject.java:2711      oracle.ifs.server.S_LibraryObject oracle.ifs.server.S_LibrarySession.newLibraryObject(oracle.ifs.server.OperationState, oracle.ifs.server.S_LibraryObjectDefinition)           S_LibrarySession.java:8159      oracle.ifs.server.S_PublicObject oracle.ifs.server.S_LibrarySession.newPublicObject(oracle.ifs.server.OperationState, oracle.ifs.server.S_LibraryObjectDefinition)           S_LibrarySession.java:8200      oracle.ifs.server.S_PublicObject oracle.ifs.server.S_LibrarySession.newPublicObject(oracle.ifs.server.S_LibraryObjectDefinition)           S_LibrarySession.java:8182      oracle.ifs.server.S_LibraryObjectData oracle.ifs.server.S_LibrarySession.DMNewPublicObject(oracle.ifs.server.S_LibraryObjectDefinition)           S_LibrarySession.java:7841      oracle.ifs.server.S_LibraryObjectData oracle.ifs.beans.LibrarySession.DMNewPublicObject(oracle.ifs.server.S_LibraryObjectDefinition)           LibrarySession.java:8015      oracle.ifs.beans.PublicObject oracle.ifs.beans.LibrarySession.NewPublicObject(oracle.ifs.beans.PublicObjectDefinition)           LibrarySession.java:5373      oracle.ifs.beans.PublicObject oracle.ifs.beans.LibrarySession.createPublicObject(oracle.ifs.beans.PublicObjectDefinition)           LibrarySession.java:2985 Process exited with exit code 0.

  • IfsException: IFS-10407: Invalid Attribute name

    I'm trying to programmaticaly create an instance of the custom class AsapPublisher that I have created. When I attempt to set the attribute jobTitle I get the IFS exception 10407. The attribute jobTitle exists so I unsure why I'm getting this error. Below is my code and stack trace. If anyone can see where I'm going wrong I would appreciate input. Thanks!
    instantiatePublisher.jsp
    <%@ page contentType="text/html;charset=WINDOWS-1252"%>
    <%@ page import="oracle.ifs.common.IfsException" %>
    <%@ page import="oracle.ifs.beans.LibrarySession" %>
    <%@ page import="oracle.ifs.beans.LibraryService" %>
    <%@ page import="java.util.Locale" %>
    <%@ page import="oracle.ifs.beans.ClassObject" %>
    <%@ page import="java.io.*" %>
    <%@ page import="publishasap.AsapPublisher" %>
    <%@ page import="publishasap.definition.AsapPublisherDef" %>
    <%@ page import="publishasap.definition.AsapPublisherContactDef" %>
    <%@ page import="oracle.ifs.common.CleartextCredential" %>
    <%@ page import="oracle.ifs.common.ConnectOptions" %>
    <%
    String username = "system";
    String password = "manager";
    String serviceName = "IfsDefault";
    String servicePassword = "ifssys";
    try
    LibraryService ifsService = new LibraryService();
    CleartextCredential credentials = new CleartextCredential(username,password);
    ConnectOptions connectOpts = new ConnectOptions();
    connectOpts.setLocale(Locale.getDefault());
    connectOpts.setServiceName(serviceName);
    connectOpts.setServicePassword(servicePassword);
    LibrarySession ifsSession = ifsService.connect(credentials,connectOpts);
    ifsSession.setAdministrationMode(true);
    //set the AsapPublisher attributes and create a publisher instance
    AsapPublisherDef publisher = new AsapPublisherDef(ifsSession);
    publisher.setCompanyName(request.getParameter("pubName"));
    publisher.setAddress1(request.getParameter("address1"));
    publisher.setAddress2(request.getParameter("address2"));
    publisher.setCity(request.getParameter("city"));
    publisher.setState(request.getParameter("state"));
    publisher.setPostalCode(request.getParameter("postalCode"));
    publisher.setCountry(request.getParameter("country"));
    publisher.setPhoneNumber(request.getParameter("phoneNumber"));
    publisher.setPublisherDescription(request.getParameter("pubDescription"));
    out.println("here");
    //create the publisher contact object
    AsapPublisherContactDef contact = new AsapPublisherContactDef(ifsSession);
    contact.setClassObject(ClassObject.getClassObjectFromLabel(ifsSession,publishasap.AsapPublisherContact.CLASS_NAME));
    contact.setJobTitle(request.getParameter("jobTitle"));
    contact.setPrefix(request.getParameter("prefix"));
    contact.setFirstName(request.getParameter("fName"));
    contact.setMInitial(request.getParameter("mInitial"));
    contact.setLastName(request.getParameter("lName"));
    contact.setSuffix(request.getParameter("suffix"));
    contact.setEmail1(request.getParameter("email1"));
    contact.setEmail2(request.getParameter("email2"));
    contact.setFax(request.getParameter("fax"));
    contact.setWkPhone(request.getParameter("workPhone"));
    contact.setUsername(request.getParameter("username"));
    contact.setPassword(request.getParameter("password"));
    publisher.setAsapPublisherContact(contact);
    AsapPublisher createPub = (AsapPublisher) ifsSession.createPublicObject(contact);
    ifsSession.disconnect();
    catch(IfsException e)
    out.println("System was unable to create an author object");
    StringWriter sw = new StringWriter();
    PrintWriter pw = new PrintWriter(sw, true);
    e.printStackTrace(pw);
    String trace = sw.toString();
    sw.close();
    pw.close();
    out.println(trace);
    IfsException.setVerboseMessage(true);
    String message = e.getMessage();
    out.println(message);
    %>
    AsapPublisher.java
    // Copyright (c) 2000 Thin Data Solutions
    package publish asap;
    import oracle.ifs.beans.*;
    import oracle.ifs.common.*;
    import oracle.ifs.server.S_LibraryObjectData;
    import publishasap.AsapCustomer;
    import publishasap.AsapPublisherContact;
    import publishasap.definition.AsapPublisherContactDef;
    * A Bean class.
    * <P>
    public class AsapPublisher extends AsapCustomer {
    public static final String CLASS_NAME= "AsapPublisher";
    public static final String PUBLISHER_CONTACT= "AsapPublisherContact";
    public static final String PUBLISHER_DESCRIPTION="publisherDescription";
    private LibrarySession m_IfsSession= null;
    * Constructor
    public AsapPublisher( LibrarySession ifs,
    java.lang.Long id,
    java.lang.Long classId,
    S_LibraryObjectData data)
    throws IfsException{
    // Construct a Document object - standard variant.
    super(ifs,id,classId,data);
    m_IfsSession= ifs;
    public void setAsapPublisherContact(AsapPublisherContact newValue)
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newValue);
    setAttribute(PUBLISHER_CONTACT, av);
    public void setAsapPublisherContact(AsapPublisherContactDef newValue)
    throws IfsException{
    PublicObject po= m_IfsSession.createPublicObject(newValue);
    AttributeValue av= AttributeValue.newAttributeValue(po);
    setAttribute(PUBLISHER_CONTACT, av);
    public void setPublisherDescription(String newValue)
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newValue);
    setAttribute(PUBLISHER_DESCRIPTION, av);
    public String getPublisherDescription()
    throws IfsException{
    AttributeValue av= getAttribute(PUBLISHER_DESCRIPTION);
    return av.getString(getSession());
    public AsapPublisherContact getAsapPublisherContact()
    throws IfsException{
    AttributeValue av= getAttribute(PUBLISHER_CONTACT);
    return (AsapPublisherContact)av.getObject(getSession());
    AsapPublisherDef.jav
    // Copyright (c) 2000 Thin Data Solutions
    package publishasap;
    import oracle.ifs.beans.*;
    import oracle.ifs.common.*;
    import oracle.ifs.server.S_LibraryObjectData;
    import publishasap.AsapCustomer;
    import publishasap.AsapPublisherContact;
    import publishasap.definition.AsapPublisherContactDef;
    * A Bean class.
    * <P>
    public class AsapPublisher extends AsapCustomer {
    public static final String CLASS_NAME= "AsapPublisher";
    public static final String PUBLISHER_CONTACT= "AsapPublisherContact";
    public static final String PUBLISHER_DESCRIPTION="publisherDescription";
    private LibrarySession m_IfsSession= null;
    * Constructor
    public AsapPublisher( LibrarySession ifs,
    java.lang.Long id,
    java.lang.Long classId,
    S_LibraryObjectData data)
    throws IfsException{
    // Construct a Document object - standard variant.
    super(ifs,id,classId,data);
    m_IfsSession= ifs;
    public void setAsapPublisherContact(AsapPublisherContact newValue)
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newValue);
    setAttribute(PUBLISHER_CONTACT, av);
    public void setAsapPublisherContact(AsapPublisherContactDef newValue)
    throws IfsException{
    PublicObject po= m_IfsSession.createPublicObject(newValue);
    AttributeValue av= AttributeValue.newAttributeValue(po);
    setAttribute(PUBLISHER_CONTACT, av);
    public void setPublisherDescription(String newValue)
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newValue);
    setAttribute(PUBLISHER_DESCRIPTION, av);
    public String getPublisherDescription()
    throws IfsException{
    AttributeValue av= getAttribute(PUBLISHER_DESCRIPTION);
    return av.getString(getSession());
    public AsapPublisherContact getAsapPublisherContact()
    throws IfsException{
    AttributeValue av= getAttribute(PUBLISHER_CONTACT);
    return (AsapPublisherContact)av.getObject(getSession());
    AsapPublisherContact.java
    // Copyright (c) 2000 Movement Inc.
    package publishasap;
    import publish asap.*;
    import oracle.ifs.beans.*;
    import oracle.ifs.common.*;
    import oracle.ifs.server.S_LibraryObjectData;
    * A Bean class.
    * <P>
    public class AsapPublisherContact extends AsapPerson {
    public static final String PUBLISHER_ID= "publisherId";
    public static final String JOB_TITLE= "jobTitle";
    public static final String CLASS_NAME= "AsapPublisherContact";
    * Constructor
    public AsapPublisherContact( LibrarySession ifs,
    java.lang.Long id,
    java.lang.Long classId,
    S_LibraryObjectData data)
    throws IfsException{
    // Construct a Document object - standard variant.
    super(ifs,id,classId,data);
    public void setPublisherId(String newId)
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newId);
    setAttribute(PUBLISHER_ID, av);
    public void setJobTitle(String newTitle)
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newTitle);
    setAttribute(JOB_TITLE, av);
    public String getPublisherId()
    throws IfsException{
    AttributeValue av= getAttribute(PUBLISHER_ID);
    return av.getString(getSession());
    public String getJobTitle()
    throws IfsException{
    AttributeValue av= getAttribute(JOB_TITLE);
    return av.getString(getSession());
    AsapPublisherContactDef.java
    // Copyright (c) 2000 Movement Inc.
    package publishasap.definition;
    import publishasap.AsapPublisherContact;
    import oracle.ifs.beans.*;
    import oracle.ifs.common.*;
    * A Bean class.
    * <P>
    public class AsapPublisherContactDef extends AsapPersonDef {
    * Constructor
    public AsapPublisherContactDef(LibrarySession ifs)
    throws IfsException
    // Construct a Document object - standard variant.
    super(ifs);
    this.setClassObject(ClassObject.getClassObjectFromLabel(ifs,publishasap.AsapPublisherContact.CLASS_NAME));
    public void setPublisherId(String newId)
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newId);
    setAttribute(AsapPublisherContact.PUBLISHER_ID, av);
    public void setJobTitle(String newTitle)
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newTitle);
    setAttribute(AsapPublisherContact.JOB_TITLE, av);
    AsapPublisherContact.xml
    <ClassObject>
    <Name>AsapPublisherContact</Name>
    <Description>Stores the information on the main contact person for the publisher.</Description>
    <SuperClass RefType="name">AsapPerson</SuperClass>
    <BeanClassPath>publishasap.AsapPublisherContact</BeanClassPath>
    <!-- Attribute list for the object -->
    <Attributes>
    <!-- Store the primary key of the publisher whom this person is the contact for. -->
    <Attribute>
    <Name>publisherId</Name>
    <DataType>String</DataType>
    <DataLength>10</DataLength>
    </Attribute>
    <!-- Store the contact person's job title or position. -->
    <Attribute>
    <Name>jobTitle</Name>
    <DataType>String</DataType>
    <DataLength>70</DataLength>
    </Attribute>
    </Attributes>
    </ClassObject>
    AsapPublisher.xml
    <ClassObject>
    <Name>AsapPublisher</Name>
    <Description>Stores the information about publishers in the database.</Description>
    <SuperClass RefType="name">AsapCustomer</SuperClass>
    <BeanClassPath>publishasap.AsapPublisher</BeanClassPath>
    <!-- Attribute list for the object. -->
    <Attributes>
    <!-- A reference to the main contact person at the publisher. -->
    <Attribute>
    <Name>asapPublisherContact</Name>
    <DataType>PublicObject</DataType>
    <ClassDomain reftype="name">AsapPubContactDomain</ClassDomain>
    </Attribute>
    <!-- A Descript ion of the publisher. -->
    <Attribute>
    <Name>publisherDescription</Name>
    <DataType>String</DataType>
    <DataLength>500</DataLength>
    </Attribute>
    </Attributes>
    </ClassObject>
    stack trace
    System was unable to create an author object oracle.ifs.common.IfsException: IFS-30002: Unable to create new LibraryObject oracle.ifs.common.IfsException: IFS-10407: Invalid Attribute name (JOBTITLE) at oracle.ifs.server.S_LibraryObject.insertRows(S_LibraryObject.java, Compiled Code) at oracle.ifs.server.OperationState.executeAtomicOperations(OperationState.java, Compiled Code) at oracle.ifs.server.S_LibraryObject.createInstance(S_LibraryObject.java, Compiled Code) at oracle.ifs.server.S_LibrarySession.newLibraryObject(S_LibrarySession.java, Compiled Code) at oracle.ifs.server.S_LibrarySession.newPublicObject(S_LibrarySession.java:6853) at oracle.ifs.server.S_LibrarySession.newPublicObject(S_LibrarySession.java:6835) at oracle.ifs.server.S_LibrarySession.DMNewPublicObject(S_LibrarySession.java:6623) at oracle.ifs.beans.LibrarySession.DMNewPublicObject(LibrarySession.java:7226) at oracle.ifs.beans.LibrarySession.NewPublicObject(LibrarySession.java:4795) at oracle.ifs.beans.LibrarySession.createPublicObject(LibrarySession.java:2789) at publishasap.definition.AsapPublisherDef.setAsapPublisherContact(AsapPublisherDef.java:41) at ifs.files._ifs._jsp_25_2dbin._admin._instantiatePublisher._jspService(_instantiatePublisher.java:166) at oracle.jsp.runtime.HttpJsp.service(HttpJsp.java, Compiled Code) at oracle.jsp.app.JspApplication.dispatchRequest(JspApplication.java, Compiled Code) at oracle.jsp.JspServlet.doDispatch(JspServlet.java, Compiled Code) at oracle.jsp.JspServlet.internalService(JspServlet.java, Compiled Code) at oracle.ifs.protocols.dav.impl.IfsDavServlet.processJsp(IfsDavServlet.java, Compiled Code) at oracle.ifs.protocols.dav.impl.IfsDavServlet.doGet(IfsDavServlet.java, Compiled Code) at oracle.ifs.protocols.dav.impl.IfsDavServlet.doPost(IfsDavServlet.java, Compiled Code) at oracle.ifs.protocols.dav.DavServlet.processRequest(DavServlet.java, Compiled Code) at oracle.ifs.protocols.dav.DavServlet.service(DavServlet.java, Compiled Code) at oracle.ifs.protocols.dav.impl.IfsDavServlet.service(IfsDavServlet.java, Compiled Code) at javax.servlet.http.HttpServlet.service(HttpServlet.java, Compiled Code) at org.apache.jserv.JServConnection.processRequest(JServConnection.java, Compiled Code) at org.apache.jserv.JServConnection.run(JServConnection.java, Compiled Code) at java.lang.Thread.run(Thread.java, Compiled Code) IFS-30002: Unable to create new LibraryObject

    Sorry Mark. Here are the rest of the files.
    AsapPerson.java
    // Copyright (c) 2000 PublishASAP
    package publishasap;
    import oracle.ifs.beans.ApplicationObject;
    import oracle.ifs.beans.LibrarySession;
    import oracle.ifs.common.AttributeValue;
    import oracle.ifs.common.IfsException;
    import oracle.ifs.server.S_LibraryObjectData;
    * Superclass of all people involved in Publishasap
    * <P>
    public class AsapPerson extends ApplicationObject {
    // Private class constants.
    public static final String CLASS_NAME = "AsapPerson";
    public static final String PREFIX= "prefix";
    public static final String FIRST_NAME= "firstName";
    public static final String INITIAL= "mInitial";
    public static final String LAST_NAME= "lastName";
    public static final String SUFFIX = "suffix";
    public static final String EMAIL_ONE= "email1";
    public static final String EMAIL_TWO= "email2";
    public static final String WORK_PHONE= "wkPhone";
    public static final String FAX= "fax";
    public static final String USERNAME= "username";
    public static final String PASSWORD= "password";
    * Constructor
    public AsapPerson(LibrarySession ifs,
    java.lang.Long id,
    java.lang.Long classId,
    S_LibraryObjectData data)
    throws IfsException{
    super(ifs, id, classId, data);
    * Set the value of the PREFIX attribute.
    public final void setPrefix( String newValue )
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue( newValue );
    setAttribute( PREFIX, av );
    * Get the current value of the PREFIX attribute.
    public final String getPrefix()
    throws IfsException{
    AttributeValue av= getAttribute(PREFIX);
    String tmp= av.getString(getSession());
    return tmp.trim();
    * Set the value of the first name attribute.
    public final void setFirstName( String newValue )
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue( newValue );
    setAttribute( FIRST_NAME, av );
    * Get the current value of the FIRST_NAME attribute.
    public final String getFirstName()
    throws IfsException{
    AttributeValue av= getAttribute(FIRST_NAME);
    String tmp= av.getString(getSession());
    return tmp.trim();
    * Set the value of the INITIAL attribute.
    public final void setMInitial( String newValue )
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue( newValue );
    setAttribute( INITIAL, av );
    * Get the current value of the INITIAL attribute.
    public final String getMInitial()
    throws IfsException{
    AttributeValue av= getAttribute(INITIAL);
    String tmp= av.getString(getSession());
    return tmp.trim();
    * Set the value of the LAST_NAME attribute.
    public final void setLastName( String newValue )
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue( newValue );
    setAttribute( LAST_NAME, av );
    * Get the current value of the LAST_NAME attribute.
    public final String getLastName()
    throws IfsException{
    AttributeValue av= getAttribute(LAST_NAME);
    String tmp= av.getString(getSession());
    return tmp.trim();
    * Set the value of the SUFFIX attribute.
    public final void setSuffix( String newValue )
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue( newValue );
    setAttribute( SUFFIX, av );
    * Get the current value of the SUFFIX attribute.
    public final String getSuffix()
    throws IfsException{
    AttributeValue av= getAttribute(SUFFIX);
    String tmp= av.getString(getSession());
    return tmp.trim();
    * Set the EMAIL_ONE attribute.
    public final void setEmail1( String newValue )
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newValue);
    setAttribute( EMAIL_ONE, av );
    * Get the current value of the EMAIL_ONE.
    public final String getEmail1()
    throws IfsException{
    AttributeValue av= getAttribute(EMAIL_ONE);
    String tmp= av.getString(getSession());
    return t mp.trim();
    * Set the EMAIL_TWO attribute.
    public final void setEmail2( String newValue )
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newValue);
    setAttribute( EMAIL_TWO, av );
    * Get the current value of EMAIL_TWO.
    public final String getEmail2()
    throws IfsException{
    AttributeValue av= getAttribute(EMAIL_TWO);
    String tmp= av.getString(getSession());
    return tmp.trim();
    * Set the value of the WORK_PHONE attribute.
    public final void setWkPhone( String newValue )
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newValue);
    setAttribute( WORK_PHONE, av );
    * Get the current value of the WORK_PHONE attribute.
    public final String getWkPhone()
    throws IfsException{
    AttributeValue av= getAttribute(WORK_PHONE);
    String tmp= av.getString(getSession());
    return tmp.trim();
    * Set the value of the FAX attribute.
    public final void setFax( String newValue )
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newValue);
    setAttribute( FAX, av );
    * Get the current value of the FAX attribute.
    public final String getFax()
    throws IfsException{
    AttributeValue av= getAttribute(FAX);
    String tmp= av.getString(getSession());
    return tmp.trim();
    * Set the value of the username and password.
    public final void setUsername( String newValue )
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newValue);
    setAttribute( USERNAME, av );
    * Get the current value of the USERNAME.
    public final String getUsername()
    throws IfsException{
    AttributeValue av= getAttribute(USERNAME);
    String tmp= av.getString(getSession());
    return tmp.trim();
    * Set the value of the PASSWORD attribute.
    public final void setPassword( String newValue )
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newValue);
    setAttribute( PASSWORD, av );
    * Get the current value of the password field.
    public final String getPassword()
    throws IfsException{
    AttributeValue av= getAttribute(PASSWORD);
    String tmp= av.getString(getSession());
    return tmp.trim();
    AsapPersonDef.java
    // Copyright (c) 2000 Movement Inc
    package publishasap.definition;
    import oracle.ifs.beans.ClassObject;
    import oracle.ifs.beans.LibrarySession;
    import oracle.ifs.beans.LibraryObjectDefinition;
    import oracle.ifs.beans.ApplicationObjectDefinition;
    import oracle.ifs.common.AttributeValue;
    import oracle.ifs.common.IfsException;
    import javax.servlet.http.HttpServletRequest;
    import oracle.ifs.beans.DocumentDefinition;
    * A Bean class.
    * <P>
    * @author Brooke Supryka
    public class AsapPersonDef extends ApplicationObjectDefinition {
    * This bean is called to create an instance of a person
    * <P>
    * @author Brooke Supryka
    private static final boolean DEBUG = true;
    * Constructs a new instance.
    public AsapPersonDef(LibrarySession ifs) throws IfsException
    //Construct an AsapAuthor object
    super(ifs);
    this.setClassObject(ClassObject.getClassObjectFromLabel(ifs,publishasap.AsapPerson.CLASS_NAME));
    * Set the value of the PREFIX attribute.
    public final void setPrefix( String newValue )
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue( newValue );
    setAttribute( publishasap.AsapPerson.PREFIX, av );
    * Set the value of the first name attribute.
    public final void setFirstName( String newValue )
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue( newValue );
    setAttribute( publishasap.AsapPerson.FIRST_NAME, av );
    * Set the value of the INITIAL attribute.
    public final void setMInitial( String newValue )
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue( newValue );
    setAttribute( publishasap.AsapPerson.INITIAL, av );
    * Set the value of the LAST_NAME attribute.
    public final void setLastName( String newValue )
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue( newValue );
    setAttribute( publishasap.AsapPerson.LAST_NAME, av );
    * Set the value of the SUFFIX attribute.
    public final void setSuffix( String newValue )
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue( newValue );
    setAttribute( publishasap.AsapPerson.SUFFIX, av );
    * Set the EMAIL_ONE attribute.
    public final void setEmail1( String newValue )
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newValue);
    setAttribute( publishasap.AsapPerson.EMAIL_ONE, av );
    * Set the EMAIL_TWO attribute.
    public final void setEmail2( String newValue )
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newValue);
    setAttribute( publishasap.AsapPerson.EMAIL_TWO, av );
    * Set the value of the WORK_PHONE attribute.
    public final void setWkPhone( String newValue )
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newValue);
    setAttribute( publishasap.AsapPerson.WORK_PHONE, av );
    * Set the value of the FAX attribute.
    public final void setFax( String newValue )
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newValue);
    setAttribute( publishasap.AsapPerson.FAX, av );
    * Set the value of the username and password.
    public final void setUsername( String newValue )
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newValue);
    setAttribute( publishasap.AsapPerson.USERNAME, av );
    * Set the value of the PASSWORD attribute.
    public final void setPassword( String newValue )
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newValue);
    setAttribute( publishasap.AsapPerson.PASSWORD, av );
    AsapCustomer
    // Copyright (c) 2000 Movement Inc.
    package publishasap;
    import oracle.ifs.beans.*;
    import oracle.ifs.common.*;
    import oracle.ifs.server.S_LibraryObjectData;
    * Instance of AsapCustomer.
    * <P>
    * @author Ian Kulmatycki
    public class AsapCustomer extends TieApplicationObject {
    public static final String CLASS_NAME= "AsapCustomer";
    public static final String COMPANY_NAME= "companyName";
    public static final String ADDRESS_1= "address1";
    public static final String ADDRESS_2= "address2";
    public static final String CITY= "city";
    public static final String STATE= "state";
    public static final String POSTAL_CODE= "postalCode";
    public static final String PHONE_NUMBER= "phoneNumber";
    public static final String COUNTRY= "country";
    * Constructor
    public AsapCustomer( LibrarySession ifs,
    java.lang.Long id,
    java.lang.Long classId,
    S_LibraryObjectData data)
    throws IfsException{
    // Construct a Document object - standard variant.
    super(ifs,id,classId,data);
    public void setCompanyName(String newName)
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newName);
    setAttribute(COMPANY_NAME, av);
    public void setAddress1(String newAddress)
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newAddress);
    setAttribute(ADDRESS_1, av);
    public void setAddress2(String newAddress)
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newAddress);
    setAttribute(ADDRESS_2, av);
    public void setCity(String newCity)
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newCity);
    setAttribute(CITY, av);
    public void setState(String newState)
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newState);
    setAttribute(STATE, av);
    public void setPostalCode(String newPostalCode)
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newPostalCode);
    setAttribute(POSTAL_C ODE, av);
    public void setCountry(String newCountry)
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newCountry);
    setAttribute(COUNTRY, av);
    public void setPhoneNumber(String newPhoneNumber)
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newPhoneNumber);
    setAttribute(PHONE_NUMBER, av);
    public String getCompanyName()
    throws IfsException{
    AttributeValue av= getAttribute(COMPANY_NAME);
    return av.getString(getSession());
    public String getAddress1()
    throws IfsException{
    AttributeValue av= getAttribute(ADDRESS_1);
    return av.getString(getSession());
    public String getAddress2()
    throws IfsException{
    AttributeValue av= getAttribute(ADDRESS_2);
    return av.getString(getSession());
    public String getCity()
    throws IfsException{
    AttributeValue av= getAttribute(CITY);
    return av.getString(getSession());
    public String getPostalCode()
    throws IfsException{
    AttributeValue av= getAttribute(POSTAL_CODE);
    return av.getString(getSession());
    public String getCountry()
    throws IfsException{
    AttributeValue av= getAttribute(COUNTRY);
    return av.getString(getSession());
    public String getState()
    throws IfsException{
    AttributeValue av= getAttribute(STATE);
    return av.getString(getSession());
    public String getPhoneNumber()
    throws IfsException{
    AttributeValue av= getAttribute(PHONE_NUMBER);
    return av.getString(getSession());
    AsapCustomerDef.java
    // Copyright (c) 2000 Movement Inc.
    package publishasap.definition;
    import oracle.ifs.beans.*;
    import oracle.ifs.common.*;
    import publishasap.AsapCustomer;
    * Create the definition for an AsapCustomer object.
    * <P>
    * @author Ian Kulmatycki
    public class AsapCustomerDef extends ApplicationObjectDefinition {
    * Constructor
    public AsapCustomerDef(LibrarySession ifs)
    throws IfsException
    // Construct a Document object - standard variant.
    super(ifs);
    this.setClassObject(ClassObject.getClassObjectFromLabel(ifs,publishasap.AsapCustomer.CLASS_NAME));
    public void setCompanyName(String newName)
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newName);
    setAttribute(AsapCustomer.COMPANY_NAME, av);
    public void setAddress1(String newAddress)
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newAddress);
    setAttribute(AsapCustomer.ADDRESS_1, av);
    public void setAddress2(String newAddress)
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newAddress);
    setAttribute(AsapCustomer.ADDRESS_2, av);
    public void setCity(String newCity)
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newCity);
    setAttribute(AsapCustomer.CITY, av);
    public void setState(String newState)
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newState);
    setAttribute(AsapCustomer.STATE, av);
    public void setPostalCode(String newPostalCode)
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newPostalCode);
    setAttribute(AsapCustomer.POSTAL_CODE, av);
    public void setCountry(String newCountry)
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newCountry);
    setAttribute(AsapCustomer.COUNTRY, av);
    public void setPhoneNumber(String newPhoneNumber)
    throws IfsException{
    AttributeValue av= AttributeValue.newAttributeValue(newPhoneNumber);
    setAttribute(AsapCustomer.PHONE_NUMBER, av);
    AsapPerson.xml
    <?xml version = '1.0' standalone = 'yes'?>
    <!-- AsapPerson.xml -->
    <ClassObject>
    <Name>AsapPerson</Name>
    <Description>AsapPerson Object</Description>
    <Superclass Reftype = "name">ApplicationObject</Superclass>
    <BeanClassPath>publishasap.AsapPerson</BeanClassPath>
    <Attributes&gt ;
    <Attribute>
    <Name>prefix</Name>
    <DataType>String</DataType>
    <DATALENGTH>4</DATALENGTH>
    </Attribute>
    <Attribute>
    <Name>firstName</Name>
    <DataType>String</DataType>
    <DATALENGTH>30</DATALENGTH>
    </Attribute>
    <Attribute>
    <Name>mInitial</Name>
    <DataType>String</DataType>
    <DATALENGTH>1</DATALENGTH>
    </Attribute>
    <Attribute>
    <Name>lastName</Name>
    <DataType>String</DataType>
    <DATALENGTH>30</DATALENGTH>
    </Attribute>
    <Attribute>
    <Name>suffix</Name>
    <DataType>String</DataType>
    <DATALENGTH>4</DATALENGTH>
    </Attribute>
    <Attribute>
    <Name>email1</Name>
    <DataType>String</DataType>
    <DATALENGTH>50</DATALENGTH>
    </Attribute>
    <Attribute>
    <Name>email2</Name>
    <DataType>String</DataType>
    <DATALENGTH>50</DATALENGTH>
    </Attribute>
    <Attribute>
    <Name>fax</Name>
    <DataType>String</DataType>
    <DATALENGTH>20</DATALENGTH>
    </Attribute>
    <Attribute>
    <Name>wkPhone</Name>
    <DataType>String</DataType>
    <DATALENGTH>20</DATALENGTH>
    </Attribute>
    <Attribute>
    <Name>username</Name>
    <DataType>String</DataType>
    <DATALENGTH>15</DATALENGTH>
    </Attribute>
    <Attribute>
    <Name>password</Name>
    <DataType>String</DataType>
    <DATALENGTH>15</DATALENGTH>
    </Attribute>
    </Attributes>
    </ClassObject>
    AsapCustomer.xml
    <?xml version="1.0" standalone="yes"?>
    <!-- AsapCustomer.xml -->
    <!-- When parsed, this file will create the definition of an AsapCustomer in the database. -->
    <ClassObject>
    <Name>AsapCustomer</Name>
    <Description>Parent of all customers that are using Publishasap.</Description>
    <SuperClass RefType="name">ApplicationObject</SuperClass>
    <BeanClassPath>publishasap.AsapCustomer</BeanClassPath>
    <!-- Attribute list for the object. -->
    <Attributes>
    <!-- The company name of the customer. -->
    <Attribute>
    <Name>companyName</Name>
    <DataType>String</DataType>
    <DataLength>75</DataLength>
    </Attribute>
    <!-- The mailing address of the customer. -->
    <Attribute>
    <Name>address1</Name>
    <DataType>String</DataType>
    <DataLength>50</DataLength>
    </Attribute>
    <!-- The secondary mailing address of the customer. -->
    <Attribute>
    <Name>address2</Name>
    <DataType>String</DataType>
    <DataLength>50</DataLength>
    </Attribute>
    <!-- The mailing city of the customer. -->
    <Attribute>
    <Name>city</Name>
    <DataType>String</DataType>
    <DataLength>30</DataLength>
    </Attribute>
    <!-- The mailing state of the customer. -->
    <Attribute>
    <Name>state</Name>
    <DataType>String</DataType>
    <DataLength>4</DataLength>
    </Attribute>
    <!-- The mailing postal code of the customer. -->
    <Attribute>
    <Name>postalCode</Name>
    <DataType>String</DataType>
    <DataLength>10</DataLength>
    </Attribute>
    <!-- The contact phone number of the customer. -->
    <Attribute>
    <Name>phoneNumber</Name>
    <DataType>String</DataType>
    <DataLength>14</DataLength>
    </Attribute>
    <!-- The mailing country of the customer. -->
    <Attribute>
    <Name>country</Name>
    <DataType>String</DataT ype>
    <DataLength>30</DataLength>
    </Attribute>
    </Attributes>
    </ClassObject>
    null

  • Creating iFS content type require more then 4 values to be set for 1st attribute

    We get the following error:
    exception in thread "main" oracle.ifs.common.IfsException: IFS-30002: Unable to
    create new LibraryObject
    java.sql.SQLException: ORA-01400: cannot insert NULL into
    ("IFSSYS"."ODM_ATTRIBUTE"."SETTABLE")
    at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:180)
    at oracle.jdbc.oci8.OCIDBAccess.check_error(OCIDBAccess.java, Compiled
    Code)
    at oracle.jdbc.oci8.OCIDBAccess.executeFetch(OCIDBAccess.java, Compiled
    Code)
    at oracle.jdbc.oci8.OCIDBAccess.parseExecuteFetch(OCIDBAccess.java:1483)
    at
    We were happily creating, updating and deleting various iFS content types by
    declaring 'n' attributes and then setting 3 or 4 of these properties of each
    one of the 'n' attributes of every content type i.e.
    //First attribute of the content Type
    AttributeDefinition adef1 = new AttributeDefinition(ifsSession);
    //First property of the first attribute of content Type
    adef1.setAttributeByUpperCaseName(Attribute.NAME_ATTRIBUTE,
    AttributeValue.newAttributeValue("FIRSTNAME"));
    //Second property of the first attribute of content Type
    adef1.setAttributeByUpperCaseName(Attribute.DESCRIPTION_ATTRIBUTE,
    AttributeValue.newAttributeValue("The firstname of the
    Employee"));
    //Third property of the first attribute of content Type
    adef1.setAttributeByUpperCaseName(Attribute.DATATYPE_ATTRIBUTE,
    AttributeValue.newAttributeValue
    (Attribute.ATTRIBUTEDATATYPE_STRING));
    //Fourth property of the first attribute of content Type
    adef1.setAttributeByUpperCaseName(Attribute.REQUIRED_ATTRIBUTE,
    AttributeValue.newAttributeValue(true));
    //Fifth property of the first attribute of content Type
    //We are forced to set this up. Otherwise we get above error.
    //However only required for first attribute of the content type.
    //Rest of the attributes (n-1) are fine.
    adef1.setAttributeByUpperCaseName(Attribute.SETTABLE_ATTRIBUTE,
    String.valueOf(true));
    //Sixth property of the first attribute of content Type
    //We are forced to set this up. Otherwise we get above error.
    //However only required for first attribute of the content type.
    //Rest of the attributes (n-1) are fine.
    adef1.setAttributeByUpperCaseName(Attribute.UPDATEABLE_ATTRIBUTE,
    String.valueOf(true));
    codef0.addAttributeDefinition(adef1);
    The other attributes are fine. We only need to set 3-4 properties of these
    attributes and could get away with it. Only the first attribute is causing the
    above problem. For other attributes of the content type, we are still setting
    only the first three/four properties
    If you look at the definition of iFS internal table "odm_attribute", apart from field "id", which is an implicit column, there are 12 columns which are NOT NULL.
    This means for every iFS attribute it must be required to set the values
    of these 12 properties. However like most of the examples in iFS doco,
    you could get away with setting 3-4 properties explicitly. I am sure some
    of them are set implicitly by iFS.
    The problem is, sometimes these implicit setting of properties by iFS is
    not working and its complaining about them. The ones which are causing
    problems are SETTABLE and UPDATEABLE.
    We are forced to set them explicitly. Hence the inconsistency.
    The problem is, what is the reason for iFS setting "SETTABLE" and
    "UPDATEABLE" implicitly for some attributes and requiring us to set them
    explicitly?
    Thanks and Regards

    hi srini,
    i have includedthe char in rows. i want you to explain in detail how to use these values in the if then else statement in query.
    i have created a calculated key figure 2= (formual variable =1 & keyfig a =0)* keyfig1kefig2 +not(formual variable =1 & keyfig a =0)keyfig2 *calculated keyfig1.
    so this formula variable of replacement path have ref. to then char. and with what value should it replace, key, name, external char or attribut etc so that i should get the values of the char from 1 to20.
    i donot to repalce with the attribute. i just want the char. values and not thier attributes (1. description 2. the second attribute has the values say abc1,efg2,ghi3 for respective charteristic values.
    ie
    char value               desc                 2nd attrib
    1                            hi                     abc1
    2                            bye                  defg2
    3                            ciao                  ghi3

  • Error Encountered while uploading HTML, PDF files via WEBUI and IFS API

    Hello:
    We have suddenly run into problems while using IFS to upload files. We cannot seem to upload html and pdf files using either the WEBUI or Oracle's IFS API. However we are able to add .gif, jpeg files both via the WEBUI and Oracles IFS API's
    This is the error we get while trying to upload .html files via the WEBUI
    IFS-30002: Unable to create new Library Object.
    This is the stack trace we get when we try creating content objects via IFS API's. We can't seem to understand why something that used to work has suddenly quit working.
    Does this have anything to do with running out of space requirements in the table spaces?
    oracle.ifs.common.IfsException: IFS-30002: Unable to create new LibraryObject oracle.ifs.common.IfsException: IFS-32251: SQL Error inserting index entry into ODMZ_CONTEXT_ROUTER java.sql.SQLException: ORA-29875: failed in the execution of the ODCIINDEXINSERT routine
    ORA-01410: invalid ROWID
    ORA-01410: invalid ROWID
    at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:180)
    at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:208)
    at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:543)
    at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1451)
    at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:862)
    at oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:1846)
    at oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:1771)
    at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2361)
    at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:422)
    at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:487)
    at oracle.ifs.server.S_LibrarySession.execute(S_LibrarySession.java:14319)
    at oracle.ifs.server.S_Media.insertIntoContextRouter(S_Media.java:2473)
    at oracle.ifs.server.S_Media.postSetContent(S_Media.java:2440)
    at oracle.ifs.server.S_Media.setContent(S_Media.java:1699)
    at oracle.ifs.server.S_ContentObject.setContent(S_ContentObject.java:399)
    at oracle.ifs.server.S_ContentObject.extendedPreInsert(S_ContentObject.java:236)
    at oracle.ifs.server.S_LibraryObject.preInsert(S_LibraryObject.java:1644)
    at oracle.ifs.server.S_LibraryObject.createInstance(S_LibraryObject.java:2711)
    at oracle.ifs.server.S_LibrarySession.createSystemObjectInstance(S_LibrarySession.java:8128)
    at oracle.ifs.server.S_Document.setContentObject(S_Document.java:475)
    at oracle.ifs.server.S_Document.extendedPreInsert(S_Document.java:313)
    at oracle.ifs.server.S_LibraryObject.preInsert(S_LibraryObject.java:1644)
    at oracle.ifs.server.S_LibraryObject.createInstance(S_LibraryObject.java:2711)
    at oracle.ifs.server.S_LibrarySession.newLibraryObject(S_LibrarySession.java:7922)
    at oracle.ifs.server.S_LibrarySession.newPublicObject(S_LibrarySession.java:7963)
    at oracle.ifs.server.S_LibrarySession.newPublicObject(S_LibrarySession.java:7945)
    at oracle.ifs.server.S_LibrarySession.DMNewPublicObject(S_LibrarySession.java:7604)
    at oracle.ifs.beans.LibrarySession.DMNewPublicObject(LibrarySession.java:7898)
    at oracle.ifs.beans.LibrarySession.NewPublicObject(LibrarySession.java:5342)
    at oracle.ifs.beans.LibrarySession.createPublicObject(LibrarySession.java:2969)
    at ORG.oclc.da.utilities.ifs.IfsDocumentUtility.createDocumentDefinition(IfsDocumentUtility.java:238)
    at ORG.oclc.da.utilities.ifs.IfsDocumentUtility.createHTML(IfsDocumentUtility.java:133)
    at ORG.oclc.da.utilities.ifs.IfsDocumentUtility.createDocument(IfsDocumentUtility.java:89)
    at ORG.oclc.da.chs.userinterface.CHSProcessListener.download(CHSProcessListener.java:1043)
    at ORG.oclc.da.chs.core.Spider.download(Spider.java:605)
    at ORG.oclc.da.chs.core.CHSTest_raj.main(CHSTest_raj.java:145)
    Any help on this front is appreciated.
    thanks
    Mathangi

    try this code, it works fine for me:
    <%@ page import="java.io.*"%>
    <%
         String name = "C:/temp/EURO_Weekly_wk01-10-26.pdf";
         try
         InputStream in = new FileInputStream(name);
         int n = 0;
              //read the file from the input stream to the byte buffer
         out.clear();
         response.setContentType("application/pdf");
         while( (n=in.read()) != -1)
                   out.write (n);
         out.close();
         catch (IOException ioe) {
                   out.println ("io error: " + ioe.getMessage());
                   return;
    %>

  • IFS problems with 8.1.6.1.0

    I had IFS working ok. Haven't tried it in a couple weeks. Installed the 8.1.6.1.0 patch for 8i on Solaris. I can still map an IFS drive through my windows client, can get documents but can't write new files out there. Get the error: Error Copying File. Cannot copy image1.jpg: Cannot find the specified file. Make sure you specify the correct path and filename.
    When I try to upload via the web interface, I get the error: IFS-30002 Unable to create new LibraryObject

    LUIS Here is the session from part of my SmbServer.log:
    logon: guest from DOOG on Mon May 22 10:47:10 EDT 2000
    logon: colerick from DOOG on Mon May 22 10:47:14 EDT 2000
    Exception: IFS-30002: Unable to create new LibraryObject
    oracle.ifs.common.IfsException: IFS-30002: Unable to create new LibraryObject
    oracle.ifs.common.IfsException: IFS-32225: Error storing reference to content object 8,170 in media IndexedBlob
    java.sql.SQLException: ORA-04045: errors during recompilation/revalidation of IFSSYS.INDEXEDBLOB_I
    ORA-29835: ODCIGETINTERFACES routine does not return required interface(s)
    ORA-29835: ODCIGETINTERFACES routine does not return required interface(s)
    at java.lang.Throwable.<init>(Compiled Code)
    at java.lang.Exception.<init>(Compiled Code)
    at java.sql.SQLException.<init>(Compiled Code)
    at oracle.jdbc.dbaccess.DBError.throwSqlException(Compiled Code)
    at oracle.jdbc.oci8.OCIDBAccess.check_error(Compiled Code)
    at oracle.jdbc.oci8.OCIDBAccess.executeFetch(Compiled Code)
    at oracle.jdbc.oci8.OCIDBAccess.parseExecuteFetch(Compiled Code)
    at oracle.jdbc.driver.OracleStatement.executeNonQuery(Compiled Code)
    at oracle.jdbc.driver.OracleStatement.doExecuteOther(Compiled Code)
    at oracle.jdbc.driver.OracleStatement.doExecuteWithBatch(Compiled Code)
    at oracle.jdbc.driver.OracleStatement.doExecute(Compiled Code)
    at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(Compiled Code)
    at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(Compiled Code)
    at oracle.jdbc.driver.OraclePreparedStatement.execute(Compiled Code)
    at oracle.ifs.server.S_MediaBlob.createBlobReference(Compiled Code)
    at oracle.ifs.server.S_MediaBlob.newEmptyContent(Compiled Code)
    at oracle.ifs.server.S_Media.setContent(Compiled Code)
    at oracle.ifs.server.S_ContentObject.setContent(Compiled Code)
    at oracle.ifs.server.S_ContentObject.extendedPreInsert(Compiled Code)
    at oracle.ifs.server.S_LibraryObject.preInsert(Compiled Code)
    at oracle.ifs.server.S_LibraryObject.createInstance(Compiled Code)
    at oracle.ifs.server.S_LibrarySession.createSystemObjectInstance(Compiled Code)
    at oracle.ifs.server.S_Document.setContentObject(Compiled Code)
    at oracle.ifs.server.S_Document.extendedPreInsert(Compiled Code)
    at oracle.ifs.server.S_LibraryObject.preInsert(Compiled Code)
    at oracle.ifs.server.S_LibraryObject.createInstance(Compiled Code)
    at oracle.ifs.server.S_LibrarySession.newLibraryObject(Compiled Code)
    at oracle.ifs.server.S_LibrarySession.newPublicObject(Compiled Code)
    at oracle.ifs.server.S_LibrarySession.newPublicObject(Compiled Code)
    at oracle.ifs.server.S_LibrarySession.DMNewPublicObject(Compiled Code)
    at oracle.ifs.beans.LibrarySession.DMNewPublicObject(Compiled Code)
    at oracle.ifs.beans.LibrarySession.NewPublicObject(Compiled Code)
    at oracle.ifs.beans.LibrarySession.createPublicObject(Compiled Code)
    at oracle.ifs.protocols.smb.server.DbFile.open(Compiled Code)
    at oracle.ifs.protocols.smb.server.DbFile.<init>(Compiled Code)
    at oracle.ifs.protocols.smb.server.DbTree.createFile(Compiled Code)
    at oracle.ifs.protocols.smb.server.ComSmb.replyOpenAndX(Compiled Code)
    at oracle.ifs.protocols.smb.server.ComSmb.process(Compiled Code)
    at oracle.ifs.protocols.smb.server.ComSmb.handleSmbMessage(Compiled Code)
    at oracle.ifs.protocols.smb.server.SmbThread.handleNbMessage(Compiled Code)
    at oracle.ifs.protocols.smb.server.SmbThread.readPackets(Compiled Code)
    at oracle.ifs.protocols.smb.server.SmbThread.run(Compiled Code)
    THE JWS.log file has a few sections like the following....
    oracle.ifs.common.IfsException: IFS-30002: Unable to create new LibraryObject
    javawebserver: ORA-29835: ODCIGETINTERFACES routine does not return required interface(s)
    javawebserver:
    javawebserver: at java.lang.Throwable.<init>(Compiled Code)
    javawebserver: at java.lang.Exception.<init>(Compiled Code)
    javawebserver: at java.sql.SQLException.<init>(Compiled Code)
    javawebserver: at oracle.jdbc.dbaccess.DBError.throwSqlExcep tion(Compiled Code)
    javawebserver: at oracle.jdbc.oci8.OCIDBAccess.check_error(Compiled Code)
    javawebserver: at oracle.jdbc.oci8.OCIDBAccess.executeFetch(Compiled Code)
    javawebserver: at oracle.jdbc.oci8.OCIDBAccess.parseExecuteFetch(Compiled Code)
    javawebserver: at oracle.jdbc.driver.OracleStatement.executeNonQuery(Compiled Code)
    javawebserver: at oracle.jdbc.driver.OracleStatement.doExecuteOther(Compiled Code)
    javawebserver: at oracle.jdbc.driver.OracleStatement.doExecuteWithBatch(Compiled Code)
    javawebserver: at oracle.jdbc.driver.OracleStatement.doExecute(Compiled Code)
    javawebserver: at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(Compiled Code)
    javawebserver: at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(Compiled Code)
    javawebserver: at oracle.jdbc.driver.OraclePreparedStatement.execute(Compiled Code)
    javawebserver: at oracle.ifs.server.S_MediaBlob.createBlobReference(Compiled Code)
    javawebserver: at oracle.ifs.server.S_MediaBlob.getOutputStream(Compiled Code)
    javawebserver: at oracle.ifs.server.S_Media.setContentStream(Compiled Code)
    javawebserver: at oracle.ifs.server.S_Media.setContent(Compiled Code)
    javawebserver: at oracle.ifs.server.S_ContentObject.setContent(Compiled Code)
    javawebserver: at oracle.ifs.server.S_ContentObject.extendedPreInsert(Compiled Code)
    javawebserver: at oracle.ifs.server.S_LibraryObject.preInsert(Compiled Code)
    javawebserver: at oracle.ifs.server.S_LibraryObject.createInstance(Compiled Code)
    javawebserver: at oracle.ifs.server.S_LibrarySession.createSystemObjectInstance(Compiled Code)
    javawebserver: at oracle.ifs.server.S_Document.setContentObject(Compiled Code)
    javawebserver: at oracle.ifs.server.S_Document.extendedPreInsert(Compiled Code)
    javawebserver: at oracle.ifs.server.S_LibraryObject.preInsert(Compiled Code)
    javawebserver: at oracle.ifs.server.S_LibraryObject.createInstance(Compiled Code)
    javawebserver: at oracle.ifs.server.S_LibrarySession.newLibraryObject(Compiled Code)
    javawebserver: at oracle.ifs.server.S_LibrarySession.newPublicObject(Compiled Code)
    javawebserver: at oracle.ifs.server.S_LibrarySession.newPublicObject(Compiled Code)
    javawebserver: at oracle.ifs.server.S_LibrarySession.DMNewPublicObject(Compiled Code)
    javawebserver: at oracle.ifs.beans.LibrarySession.DMNewPublicObject(Compiled Code)
    javawebserver: at oracle.ifs.beans.LibrarySession.NewPublicObject(Compiled Code)
    javawebserver: at oracle.ifs.beans.LibrarySession.createPublicObject(Compiled Code)
    javawebserver: at oracle.ifs.clients.webui.MultiPartRequest.processFile(Compiled Code)
    javawebserver: at oracle.ifs.clients.webui.MultiPartRequest.processHeaders(Compiled Code)
    javawebserver: at oracle.ifs.clients.webui.MultiPartRequest.processRequest(Compiled Code)
    javawebserver: at oracle.ifs.clients.webui.MultiPartRequest.<init>(Compiled Code)
    javawebserver: at ifs.webui._jsps._upload2._jspService(Compiled Code)
    javawebserver: at oracle.ifs.protocols.http.jsp.pagecompile.jsp.runtime.HttpJspBase.service(Compiled Code)
    javawebserver: at javax.servlet.http.HttpServlet.service(Compiled Code)
    javawebserver: at oracle.ifs.protocols.http.jsp.IfsJspServlet.runServlet(Compiled Code)
    javawebserver: at oracle.ifs.protocols.http.jsp.IfsJspServlet.processJspPage(Compiled Code)
    javawebserver: at oracle.ifs.protocols.http.jsp.IfsJspServlet.service(Compiled Code)
    javawebserver: at javax.servlet.http.HttpServlet.service(Compiled Code)
    javawebserver: at com.sun.server.ServletState.callService(Compiled Code)
    javawebserver: at com.sun.server.ServletManager.callServletService(Compiled Code)
    javawebserver: at com.sun.server.ProcessingState.invokeTargetServlet(Compiled Code)
    javawebserver: at com.sun.server.http.HttpProcessingState.execute(Compiled Code)
    javawebserver: at com.sun.server.http.stages.Runner.process(Compiled Code)
    javawebserver: at com.sun.server.ProcessingSupport.process(Compiled Code)
    javawebserver: at com.sun.server.Service.process(Compiled Code)
    javawebserver: at com.sun.server.http.HttpServiceH andler.handleRequest(Compiled Code)
    javawebserver: at com.sun.server.http.HttpServiceHandler.handleRequest(Compiled Code)
    javawebserver: at com.sun.server.HandlerThread.run(Compiled Code)
    javawebserver:
    javawebserver: java.lang.RuntimeException: java.lang.Exception: No Path Specified
    javawebserver: at java.lang.Throwable.<init>(Compiled Code)
    javawebserver: at java.lang.Exception.<init>(Compiled Code)
    javawebserver: at java.lang.RuntimeException.<init>(Compiled Code)
    javawebserver: at oracle.ifs.clients.webui.ContainerDisplayDirectory.find(Compiled Code)
    javawebserver: at oracle.ifs.clients.webui.GetContents.GetContents(Compiled Code)
    javawebserver: at ifs.webui._jsps._container._jspService(Compiled Code)
    javawebserver: at oracle.ifs.protocols.http.jsp.pagecompile.jsp.runtime.HttpJspBase.service(Compiled Code)
    javawebserver: at javax.servlet.http.HttpServlet.service(Compiled Code)
    javawebserver: at oracle.ifs.protocols.http.jsp.IfsJspServlet.runServlet(Compiled Code)
    javawebserver: at oracle.ifs.protocols.http.jsp.IfsJspServlet.processJspPage(Compiled Code)
    javawebserver: at oracle.ifs.protocols.http.jsp.IfsJspServlet.service(Compiled Code)
    javawebserver: at javax.servlet.http.HttpServlet.service(Compiled Code)
    javawebserver: at com.sun.server.ServletState.callService(Compiled Code)
    javawebserver: at com.sun.server.ServletManager.callServletService(Compiled Code)
    javawebserver: at com.sun.server.ProcessingState.invokeTargetServlet(Compiled Code)
    javawebserver: at com.sun.server.http.HttpProcessingState.execute(Compiled Code)
    javawebserver: at com.sun.server.http.stages.Runner.process(Compiled Code)
    javawebserver: at com.sun.server.ProcessingSupport.process(Compiled Code)
    javawebserver: at com.sun.server.Service.process(Compiled Code)
    javawebserver: at com.sun.server.http.HttpServiceHandler.handleRequest(Compiled Code)
    javawebserver: at com.sun.server.http.HttpServiceHandler.handleRequest(Compiled Code)
    javawebserver: at com.sun.server.HandlerThread.run(Compiled Code)
    javawebserver: oracle.ifs.common.IfsException: IFS-30002: Unable to create new LibraryObject
    javawebserver: ORA-29835: ODCIGETINTERFACES routine does not return required interface(s)
    javawebserver:
    Regards,
    null

  • How can i add custom attributes to a new Class Object using the API ?

    Hello everyone,
    Here is my problem. I just created a subclass of Document using the API (not XML), by creating a ClassObjectDefinition and a ClassObject. Here is the code :
    // doc is an instance of Document
    ClassObject co = doc.getClassObject();
    ClassObjectDefinition cod = new ClassObjectDefinition(ifsSession);
    cod.setSuperclass(co);
    cod.setSuperclassName(co.getName());
    cod.setName("MYDocument");
    ClassObject c = (ClassObject)ifsSession.createSchemaObject(cod);
    Everything seems to be OK since i can see the new class when i use ifsmgr. But my question is : how can i add custom attributes to this new class ? Here is what i tried :
    AttributeDefinition value = new AttributeDefinition(ifsSession);
    value.setAttribute("FOO", AttributeValue.newAttributeValue("bar"));
    c.addAttribute(value);
    But i got the following error message :
    oracle.ifs.common.IfsException: IFS-30002: Unable to create new LibraryObject
    java.sql.SQLException: ORA-01400: impossible d'insirer NULL dans ("IFSSYS"."ODM_ATTRIBUTE"."DATATYPE")
    oracle.ifs.server.S_LibraryObjectData oracle.ifs.beans.LibrarySession.DMNewSchemaObject(oracle.ifs.server.S_LibraryObjectDefinition)
    oracle.ifs.beans.SchemaObject oracle.ifs.beans.LibrarySession.NewSchemaObject(oracle.ifs.beans.SchemaObjectDefinition)
    oracle.ifs.beans.SchemaObject oracle.ifs.beans.LibrarySession.createSchemaObject(oracle.ifs.beans.SchemaObjectDefinition)
    void fr.sword.ifs.GestionDocument.IFSDocument.createDocument(java.lang.String)
    void fr.sword.ifs.GestionDocument.IFSDocument.main(java.lang.String[])
    So, what am i doing wrong ?
    More generally, are we restricted in the types of the attributes ? (for example, would it be possible to add an attribute that would be an inputStream ? Or an object that i have already created ?).
    Any help would be appreciated. Thanks in advance.
    Guillaume
    PS : i'm using Oracle iFS 1.1.9 on NT4 SP6 and Oracle 8.1.7
    null

    Hi Guillaume,
    you're welcome. Don't know exactly, but assume that ATTRIBUTEDATATYPE_UNKNOWN
    is used to check for erronous cases only
    and it shouldn't be used otherwise.
    Creating your own objects could be simply done via
    ClassObject ifsClassObject;
    DocumentDefinition ifsDocDef = new DocumentDefinition(ifsSession);
    // get class object for my very own document
    ifsClassObject = ClassObject.getClassObjectFromLabel(ifsSession, "MYDOCUMENT");
    // set the class for the document i'd like to create
    ifsDocDef.setClassObject(ifsClassObject);
    // set attributes and content for the document...
    ifsDocDef.setAttribute("MYFOO_ATTRIBUTE",....);
    ifsDocDef.setContent("This is the content of my document");
    // create the document...
    PublicObject doc = ifsSession.createPublicObject(ifsDocDef);
    null

  • Problem creating items in a folder owned by another user

    Hi
    Iam getting an exception when i try to create a folder owned (or shall i say) created by another user.Let me explain what iam doing :
    1. I have created a folder "INPRISE" under "/home".I have
    created an ACL "MyAcl" having group INPRISEGROUP
    as the ACE having all permissions.I have set the ACL "MyAcl" on the folder "INPRISE".
    2. I have created two users i1 and i2
    and placed them in the group INPRISEGROUP .Both these users have a link under thei home folder to "INPRISE" folder(achieved by using and addItem()).
    3. I could successfully login as i1 and create a folder "WebApps" under "INPRISE" and upload a document "A.txt" under "WebApps".
    4.But when i log in as "i2" and try to create a document "B.txt" under "WebApps" which was created by user "i1" i get the following exception :
    javawebserver: Got the user
    javawebserver: got the primary user profile
    javawebserver: THE HOME FOLDER IS --> i1
    javawebserver: The home folder name is --> i1
    javawebserver: home folder
    javawebserver: Got the user
    javawebserver: got the primary user profile
    javawebserver: THE HOME FOLDER IS --> i1
    javawebserver: The home folder name is --> i1
    javawebserver: home folder
    javawebserver: Got the user
    javawebserver: got the primary user profile
    javawebserver: THE HOME FOLDER IS --> i1
    javawebserver: The home folder name is --> i1
    javawebserver: home folder
    javawebserver: **********Creating document in /home/i1/INPRISE/WebApps
    javawebserver: Created document..
    javawebserver: Setting permissions for the document....
    javawebserver: setting the access level
    javawebserver: Got the user
    javawebserver: got the primary user profile
    javawebserver: THE HOME FOLDER IS --> i2
    javawebserver: The home folder name is --> i2
    javawebserver: home folder
    javawebserver: Got the user
    javawebserver: got the primary user profile
    javawebserver: THE HOME FOLDER IS --> i2
    javawebserver: The home folder name is --> i2
    javawebserver: home folder
    javawebserver: Got the user
    javawebserver: got the primary user profile
    javawebserver: THE HOME FOLDER IS --> i2
    javawebserver: The home folder name is --> i2
    javawebserver: home folder
    javawebserver: **********Creating document in /home/i2/INPRISE/WebApps
    javawebserver: Error while creating document.....
    javawebserver: oracle.ifs.common.IfsException: IFS-30002: Unable to create new
    LibraryObject
    javawebserver: oracle.ifs.common.IfsException: IFS-30048: Insufficient access t
    o add items to a Folder
    javawebserver: oracle.ifs.common.IfsException: IFS-30030: Permission not grante
    d on specified ACL
    javawebserver: at java.lang.Throwable.<init>(Compiled Code)
    javawebserver: at java.lang.Exception.<init>(Compiled Code)
    javawebserver: at org.omg.CORBA.UserException.<init>(Compiled Code)
    javawebserver: at oracle.ifs.common.IfsException.<init>(Compiled Code)
    javawebserver: at oracle.ifs.common.IfsException.<init>(Compiled Code)
    javawebserver: at oracle.ifs.common.IfsException.<init>(Compiled Code)
    javawebserver: at oracle.ifs.server.S_AccessControlList.verifyStandardPermissi
    onEnabled(S_AccessControlList.java:602)
    javawebserver: at oracle.ifs.server.S_PublicObject.verifyPublicObjectPermissio
    n(S_PublicObject.java:2169)
    javawebserver: at oracle.ifs.server.S_Folder.verifyCanAddItem(S_Folder.java:10
    05)
    javawebserver: at oracle.ifs.server.S_Folder.addReference(S_Folder.java:719)
    javawebserver: at oracle.ifs.server.S_Folder.addReference(S_Folder.java:697)
    javawebserver: at oracle.ifs.server.S_PublicObject.postCreateAddToFolder(S_Pub
    licObject.java:2753)
    javawebserver: at oracle.ifs.server.S_PublicObject.extendedPostInsert(S_Public
    Object.java:995)
    javawebserver: at oracle.ifs.server.S_LibraryObject.postInsert(S_LibraryObject
    .java:1341)
    javawebserver: at oracle.ifs.server.OperationState.executeAtomicOperations(Com
    piled Code)
    javawebserver: at oracle.ifs.server.S_LibraryObject.createInstance(S_LibraryOb
    ject.java:2348)
    javawebserver: at oracle.ifs.server.S_LibrarySessio n.newLibraryObject(S_Librar
    ySession.java:6596)
    javawebserver: at oracle.ifs.server.S_LibrarySession.newPublicObject(S_Library
    Session.java:6637)
    javawebserver: at oracle.ifs.server.S_LibrarySession.newPublicObject(S_Library
    Session.java:6619)
    javawebserver: at oracle.ifs.server.S_LibrarySession.DMNewPublicObject(S_Libra
    rySession.java:6407)
    javawebserver: at oracle.ifs.beans.LibrarySession.DMNewPublicObject(LibrarySes
    sion.java:6913)
    javawebserver: at oracle.ifs.beans.LibrarySession.NewPublicObject(LibrarySessi
    on.java:4564)
    javawebserver: at oracle.ifs.beans.LibrarySession.createPublicObject(LibrarySe
    ssion.java:2562)
    javawebserver: at oracle.ifs.utils.common.PublicObjectUtilities.createDocument
    (PublicObjectUtilities.java:537)
    javawebserver: at oracle.ifs.utils.common.PublicObjectUtilities.putAsDocumentW
    ithVersioning(PublicObjectUtilities.java:163)
    javawebserver: at oracle.ifs.adk.filesystem.IfsFileSystem.createDocument(IfsFi
    leSystem.java:922)
    javawebserver: at dp.DPDocManager.uploadDocument(DPDocManager.java:374)
    javawebserver: at ifs.jsp_sbin._dp._dpDoc._jspService(_dpDoc.java:115)
    javawebserver: at oracle.ifs.protocols.http.jsp.pagecompile.jsp.runtime.HttpJs
    pBase.service(HttpJspBase.java:94)
    javawebserver: at javax.servlet.http.HttpServlet.service(Compiled Code)
    javawebserver: at oracle.ifs.protocols.http.jsp.IfsJspServlet.runServlet(IfsJs
    pServlet.java:865)
    javawebserver: at oracle.ifs.protocols.http.jsp.IfsJspServlet.processJspPage(C
    ompiled Code)
    javawebserver: at oracle.ifs.protocols.http.jsp.IfsJspServlet.service(IfsJspSe
    rvlet.java:240)
    javawebserver: at javax.servlet.http.HttpServlet.service(Compiled Code)
    javawebserver: at com.sun.server.ServletState.callService(ServletState.java:22
    6)
    javawebserver: at com.sun.server.ServletManager.callServletService(ServletMana
    ger.java:936)
    javawebserver: at com.sun.server.ProcessingState.invokeTargetServlet(Processin
    gState.java:423)
    javawebserver: at com.sun.server.http.HttpProcessingState.execute(HttpProcessi
    ngState.java:79)
    javawebserver: THE ERROR MESSAGE IS IFS-30002: Unable to create new LibraryObje
    ct
    javawebserver: Setting permissions for the document....
    javawebserver: setting the access level
    javawebserver: at com.sun.server.http.stages.Runner.process(Runner.java:79)
    javawebserver: at com.sun.server.ProcessingSupport.process(Compiled Code)
    javawebserver: at com.sun.server.Service.process(Service.java:204)
    javawebserver: at com.sun.server.http.HttpServiceHandler.handleRequest(HttpSer
    viceHandler.java:374)
    javawebserver: at com.sun.server.http.HttpServiceHandler.handleRequest(Compile
    d Code)
    javawebserver: at com.sun.server.HandlerThread.run(Compiled Code)
    javawebserver:
    javawebserver:
    javawebserver: Error during JSP page processing: /ifs/jsp-bin/dp/dpDoc.jsp
    javawebserver: java.lang.NullPointerException
    The Code is :
    package dp;
    import oracle.ifs.beans.*;
    import oracle.ifs.common.*;
    import oracle.ifs.beans.parsers.*;
    import oracle.ifs.adk.security.*;
    import oracle.ifs.adk.filesystem.*;
    import java.io.*;
    import java.util.Locale;
    import javax.servlet.http.*;
    * The document manager bean for the Deal Planner app.
    * <p>
    * This class provides a login session/creates a new account in the IFS. The class
    * implements the <code>IfsHttpLogin</code> interface so it can share login data with other
    * beans.
    * @author Srinivas Sampige
    * @version 1.0
    * @see IfsHttpLogin
    public class DPDocManager implements IfsHttpLogin
    private String userName = "";
    private LibrarySession ifsSession = null;
    private FolderPathResolver fPathResolver = null;
    private IfsFileSystem ifsFileSystem; // File System object
    public DPDocManager()
    {//does nothing
    *Creates a new account in the IFS for
    *a new deal when the deal code is passed in.
    *@ param dealCode The deal code of the deal for which an account has to be created
    *@ param password A system generate d password for the account being created.
    *@ return String Will return "SUCCESS" on creating the account or the reason if an
    * error occurrs.
    public String createDealFolder(String dealCode)
    String result = "SUCCESS";
    try
    ifsSession = getIfsConnection("system","manager","ServerManager","i5ifs");
    ifsSession.setAdministrationMode(true);
    //create a new folder for this deal
    Folder dealFolder = createFolder("/home",dealCode);
    //create a group for this deal;place the group as
    //an access control entry in an access control list.
    //Set the access control list to the folder.
    AccessControlList acl = createDealGroup(dealCode);
    dealFolder.setAcl(acl);
    ifsSession.setAdministrationMode(false);
    }catch(IfsException ie)
    int code = ie.getErrorCode();
    System.out.println("THE ERROR CODE WHILE CREATING DEAL FOLDER IS -- "+code);
    ie.printStackTrace();
    result = ie.getMessage();
    return result;
    }//createDealFolder
    public String createUser(String userId,String password,String dealCode)
    String result = "SUCCESS";
    System.out.println("Creating user and adding to a group "+userId);
    try
    this.ifsSession = getIfsConnection("system","manager","ServerManager","i5ifs");
    ifsSession.setAdministrationMode(true);
    System.out.println("Logged in successully");
    //form the XML necessary for creating the simple user;
    //the new user in the IFS will be the Deal.User id will be the deal code;
    //password is fetched from the DEALS table.
    String simpleUserString = "<?xml version = '1.0' standalone = 'yes'?>\n"
    + "<SimpleUser>\n"
    + " <UserName>"+userId+"</UserName>\n"
    + " <Password>"+userId+"</Password>\n"
    + " <HomeFolderRoot>/home</HomeFolderRoot>\n"
    + "</SimpleUser>\n";
    System.out.println("Parsing "+simpleUserString);
    //invoke the XML parser for creating the new user
    StringReader userDefinition = new StringReader(simpleUserString);
    SimpleXmlParser xmlParser = new SimpleXmlParser(ifsSession);
    xmlParser.parse(userDefinition,null,null);
    //a valid user for a deal must belong to the deals group;add the user
    //to the appropriate group for the deal
    String userToGroupString = "<?xml version = '1.0' standalone = 'yes'?>\n"
    + "<DirectoryGroup>\n"
    + " <Update reftype='Name'>" + dealCode+"Group" + "</Update>\n"
    + " <Members>"
    + " <Member reftype='Name'>" + userId + "</Member>"
    + " </Members>"
    + "</DirectoryGroup>\n";
    //invoke the XML parser for adding the new user to the group
    StringReader groupUpdate = new StringReader(userToGroupString);
    xmlParser = new SimpleXmlParser(ifsSession);
    LibraryObject lo = xmlParser.parse(groupUpdate,null,null);
    System.out.println ("The LO returned by parse is " + lo);
    //link this user's home folder to the deal folder
    Collection c = ifsSession.getDirectoryUserCollection();
    DirectoryUser du = (DirectoryUser) c.getItems(userId);
    System.out.println("The DirectoryUser created is " + du.getDistinguishedName());
    //Folder homeFolder = (Folder) getIfsFileSystem().findPublicObjectByPath("/home/"+dealCode);
    Folder homeFolder = du.getPrimaryUserProfile().getHomeFolder();
    System.out.println("Home folder is"+homeFolder);
    homeFolder.addItem((Folder)getIfsFileSystem().findPublicObjectByPath("/home/"+dealCode));
    System.out.println("Created a link to the deal folder... ");
    ifsSession.setAdministrationMode(false);
    }catch(IfsException ie)
    IfsException.setVerboseMessage(true);
    ie.printStackTrace();
    return result;
    }//public
    /* public String addUserToGroup(String groupName)
    try
    InternetFileSystem ifs = getFileSystem();
    ifs.findPublicObjectByPath(goupName);
    }catch(IfsException ie)
    ie.setVerboseMessage(true);
    System.out.println("Problem while adding user to the group "+ie.getMessage());
    ie.printStackTrace();
    }//addUserToGroup
    *This method creates a group that for a particular deal.
    *All members having access to this deal must belong to thi                                                                                                            s
    * group.
    public AccessControlList createDealGroup(String dealCode)
    AccessControlList acl = null;
    try
    DirectoryGroupDefinition def = new DirectoryGroupDefinition(ifsSession);
    def.setAttribute("NAME",AttributeValue.newAttributeValue(dealCode+"Group"));
    DirectoryGroup dealGroup = (DirectoryGroup)ifsSession.createPublicObject(def);
    AccessControlListDefinition aclDef = new AccessControlListDefinition(ifsSession);
    AccessControlEntryDefinition aceDef = new AccessControlEntryDefinition(ifsSession);
    AccessLevel aLevel = new AccessLevel();
    aLevel.enableAllStandardPermissions();
    aLevel.disableStandardPermission(AccessLevel.ACCESSLEVEL_ADDITEM);
    aLevel.disableStandardPermission(AccessLevel.ACCESSLEVEL_CREATE);
    aLevel.disableStandardPermission(AccessLevel.ACCESSLEVEL_ALL);
    aceDef.setGrantee(dealGroup);
    aceDef.setDistinctAccessLevel(aLevel);
    aclDef.addAceDefinition(aceDef);
    acl = (AccessControlList) ifsSession.createPublicObject(aclDef);
    acl.setName(dealCode+"ACL");
    }catch(IfsException ie)
    System.out.println("error while creating group for deal");
    IfsException.setVerboseMessage(true);
    ie.printStackTrace();
    return acl;
    }//createUser
    *makes a connection the the IFS and returns the LibrarySession object.
    *@param userName user name for a valid IFS account.
    *@param password password for a valid IFS account.
    *@param serviceName the IFS service name.
    *@param schemaPassword the IFS schema password.
    private LibrarySession getIfsConnection(String username, String password, String serviceName,
    String schemaPassword) throws IfsException
    LibraryService service = new LibraryService();
    CleartextCredential me = new CleartextCredential(username, password);
    ConnectOptions connection = new ConnectOptions();
    connection.setLocale(Locale.getDefault());
    connection.setServiceName(serviceName);
    connection.setServicePassword(schemaPassword);
    ifsSession = service.connect(me, connection);
    fPathResolver = new FolderPathResolver(ifsSession);
    ifsFileSystem = new IfsFileSystem(ifsSession);
    return ifsSession;
    }//getIfsConnection()
    public String loginToIfs(String userName,String password,String serviceName,String schemaPassword)
    String result = "SUCCESS";
    try
    getIfsConnection(userName,password,serviceName,schemaPassword);
    this.userName = userName;
    //getResolver().setHomeFolder("/home/"+userName);
    }catch(IfsException ie)
    int code = ie.getErrorCode();
    System.out.println("ERROR CODE "+code);
    result = "FAILED -- "+code+" -- "+ie.getMessage();
    System.out.println("Failed to login "+ie.getMessage());
    ie.printStackTrace();
    return result;
    }//loginToIfs
    public LibrarySession getSession()
    return ifsSession;
    }//getSession()
    public FolderPathResolver getResolver()
    return fPathResolver;
    public IfsFileSystem getIfsFileSystem()
    return ifsFileSystem;
    public Folder getHomeFolder()
    Folder homeFolder = null;
    try
    DirectoryUser user = ifsSession.getUser();
    System.out.println("Got the user");
    PrimaryUserProfile primary = user.getPrimaryUserProfile();
    System.out.println("got the primary user profile");
    homeFolder = primary.getHomeFolder();
    System.out.println("THE HOME FOLDER IS --> "+homeFolder);
    System.out.println("The home folder name is --> "+homeFolder.getName());
    }catch(IfsException ie)
    ie.printStackTrace();
    System.out.println("home folder");
    return homeFolder;
    }//getHomeFolderPath()
    * Called when this object is bound to the HTTP session object.
    * @param event The event when the object is bound to the Http session.
    public void valueBound(HttpSessionBindingEvent event)
    // do nothing
    * Called when this object is unbound from the HTTP session object.
    * @param event The event when the object is unbound to the Http session.
    public void valueUnbound(HttpSessionBindingEvent event)
    //release the reources like the ifsSession etc.
    fPathResolver = null;
    try
    if (ifsSession != null)
    ifsSession.di sconnect();
    }catch (IfsException e)
    e.printStackTrace();
    finally
    ifsSession = null; // release the resources
    }//valueUnbound()
    public Folder createFolder(Folder destinationFolder,String theNewFolderPath)
    Folder createdFolder = null;
    try
    System.out.println("<*---*> IN THE FOLDER "+destinationFolder);
    IfsFileSystem ifs = getIfsFileSystem();
    System.out.println("Creating the folder..");
    createdFolder = ifs.createFolder(theNewFolderPath,destinationFolder,true,null);
    System.out.println("Created the folder..");
    }catch(IfsException ie)
    System.out.println("ERROR CREATING A FOLDER IN THE DESTINATION FOLDER");
    IfsException.setVerboseMessage(true);
    ie.printStackTrace();
    return createdFolder;
    }//createFolder(String inTheFolder,theNewFolder)
    public Folder createFolder(String inTheFolder,String theNewFolderPath)
    Folder createdFolder = null;
    try
    System.out.println("<*---*> IN THE FOLDER "+inTheFolder);
    IfsFileSystem ifs = getIfsFileSystem();
    System.out.println("Creating ANOTHER folder for test");
    Folder destinationFolder = (Folder) ifs.findPublicObjectByPath("/"+inTheFolder);
    System.out.println("The destination folder is "+destinationFolder);
    /* Folder destinationFolderMyTest = (Folder) ifs.findPublicObjectByPath("/home/c6/COREL/MY-TEST/");
    System.out.println("The destination folder my test is "+destinationFolderMyTest);*/
    createdFolder = ifs.createFolder(theNewFolderPath,destinationFolder,true,null);
    /* System.out.println("Created folder in destination folder ");
    createdFolder = ifs.createFolder(theNewFolderPath,(Folder) ifs.findPublicObjectByPath(inTheFolder),true,null);
    System.out.println("Created folder in MY-TEST ");*/
    }catch(IfsException ie)
    System.out.println("ERROR CREATING A FOLDER IN THE DESTINATION FOLDER");
    IfsException.setVerboseMessage(true);
    ie.printStackTrace();
    return createdFolder;
    }//createFolder(String inTheFolder,theNewFolder)
    *Method creates a folder in the path specified(the path includes the name of the folder
    *to be created).If a parent of any of the folders in the path
    *is not found then that folder is automatically created.
    public String createFolder(String folderPath)
    System.out.println("*-*-*-*-* Creating folder *-*-*-*-*");
    String result = "SUCCESS";
    try
    //ifsSession.setAdministrationMode(true);
    IfsFileSystem ifs = new IfsFileSystem(ifsSession);
    Folder folder = (Folder) ifs.findPublicObjectByPath("home/"+userName);
    ifs.createFolder(folderPath,(Folder) folder,true,null);
    }catch(IfsException ie)
    result = ie.getMessage();
    ie.printStackTrace();
    return result;
    }//createFolder
    //Upload a document to the ifs
    public Document uploadDocument(String localPath,String destinationPath)
    Document document = null;
    try
    IfsFileSystem ifs = new IfsFileSystem(ifsSession);
    FileInputStream fis = new FileInputStream(localPath);
    System.out.println("**********Creating document in "+destinationPath);
    document = ifs.createDocument("B.txt", fis, destinationPath, null, false, null);
    System.out.println("Created document..");
    }catch(IfsException e)
    System.out.println("Error while creating document.....");
    IfsException.setVerboseMessage(true);
    e.printStackTrace();
    System.out.println("THE ERROR MESSAGE IS "+e.getMessage());
    catch(Exception e)
    System.out.println("File not found/io exception ");
    e.printStackTrace();
    return document;
    }//uploadDocument
    * Adds an access control entry to the public object passed in.
    *@param PublicObject the publicObject for which permissions have to be set.
    public void setAccessControlOnObject(PublicObject publicObject)
    try
    System.out.println("Setting permissions for the document....");
    AccessControlListDefinition aclDef = new AccessControlListDefinition();
    aclDef.setName(publicObject+"ACL");
    AccessControlEntryDefinition aceDef = new AccessControlEntryDefinition();
    //this sets the acceess control entry's granntee as the "user" who ha s loggen on
    aceDef.setGrantee(ifsSession.getDirectoryUser());
    aceDef.enableGrantToWorld(false);
    String[] permissions = {"ACCESSLEVEL_NONE"};
    System.out.println("setting the access level");
    AccessLevel accessLevel = new AccessLevel(permissions);
    /*PermissionBundleDefinition pbDef = new PermissionBundleDefinition(ifsSession);
    PermissionBundle pb = (PermissionBundle) ifsSession.createSystemObject(pbDef);
    pbDef.setAccessLevel(accessLevel);
    pbDef.setAccessLevel(accessLevel);
    aceDef.addPermissionBundle(pb);*/
    aceDef.setDistinctAccessLevel(accessLevel);
    aclDef.addAceDefinition(aceDef);
    AccessControlList acl = (AccessControlList) ifsSession.createPublicObject(aclDef);
    publicObject.setAcl(acl);
    }catch(IfsException ie)
    System.out.println("The error while settin access control is -0> "+ie.getMessage());
    ie.setVerboseMessage(true);
    ie.printStackTrace();
    }//createAccessControlList
    }//class DPDocManager
    Note : since iam still experimenting with the code please ignore any irrelevant/wrong commenting.Iam using method "CreateDealFolder()" to create the folder "INPRISE" and "CreateUser()" to create users "i1","i2"

    Iam not able to set the main folder's (i.e INPRISE) acl (MyAcl) on the subfolder "MyFolder" because the owner of MyAcl is "system" whereas the owner of MyFolder is user "i1" .Which is the best way of solving these ownership issue which iam running into ? I want to be able to create different folders ,assign a group of uers to each of the folders who can create as well as modify,delete each other's folders/documents (as i have mentioned in my first post in this thread) ?
    thanks
    Srinivas

  • Creating a Document from an uploaded file

    Hi,
    I'm trying to create a Document through a JSP, from a file already on the local hard drive. The line that is causing the error in the JSP is:
    Document doc = ifs.createDocument( "createdoctest", new FileInputStream("D:\\oracle\\ora81\\ifs1.1\\jws\\public_html\\upload\\test.txt" ), ".", null, false, null );
    I'm basically trying to copy the file test.txt into the iFS repository by creating the Document.
    The error is:
    oracle.ifs.common.IfsException: IFS-30002: Unable to create new LibraryObject
    What have I done wrong here?
    Thanks!
    null

    Hi,
    I tried your code and it worked for me.
    below is my code
    FolderPathResolver fpr = new FolderPathResolver(ifSession);
    IfsFileSystem ifsFile = new IfsFileSystem (ifSession);
    PublicObject pObject = fpr.findPublicObjectByPath("/home/user");
    if (pObject != null){
    Document doc = ifsFile.createDocument( "createdoctest", new FileInputStream("C:\\Temp\\application.pdf"), ".", null, false, null );
    doc.setOwner( pObject.getOwner() );
    Good luck
    Suresh

Maybe you are looking for

  • Keyboard short cut not working in iOS 6 on iPhone

    I just tried adding a new keyboard short cut on my iPhone 4S with iOS 6 and the short cut will not stay on the phone.  I can enter it and it is added to the list of short cuts until I go back one screen, then the shor cut disappears.  This worked fin

  • How do I get XP2200+ up to speed1800MHZ?

    Am I getting what I should for performance i.e. CPU freq of 1350? I am a serious gamer using sims like MS CFS2 and FS2004 WHAT I HAVE: current CPU clock is 1350MHZ CPU/FSB clock is 100MHZ current DRAM clock is 166MHZ I have been reading posts for two

  • Wage type amounts in cluster PCL4

    Hi all, I am trying to capture the wage type amount changes in infotype logging. enables infotype logging. Used function module 'HR_INFOTYPE_LOG_GET_LIST' and HR_INFOTYPE_LOG_GET_DETAIL to retrieve the change data. So far so fine. But the structuer r

  • Folio order in a multi folios application

    I've 8 folios ready to be published in my multi-folio app. But when I published them, they appear in a random order instead of in the publication time order. How can I fix this ?

  • Copy and Paste in OSX10.6.2

    Hello, when i am copying and pasting a textframe in an appleworks draw document, the pasted textframe becomes a picture. It can't be edited any more! And there is no redo! The same behaviour in a text document. A pasted text frame as an inline-object