EXITS-PARAM in user exit

Hi ,
   When we do substitution in FICO by user exit there are three types of EXITS-PARAM
    EXITS-PARAM = C_EXIT_PARAM_NONE.
    EXITS-PARAM = C_EXIT_PARAM_FIELD
    EXITS-PARAM = C_EXIT_PARAM_CLASS.
   Could you tell me the difference among them? Thanks.

There are three values for this parameter, and are defined as constants:
C_EXIT_PARAM_NONE:
This constant means that no parameters are defined for this user exit. In truth, there is one parameter defined and that is a boolean flag that is used to specify whether there is an error in the data or not. A value of false for this parameter means that the data is valid(!) and a value of true means that there is an error.
This parameter is valid for rules, validations and substitutions.
C_EXIT_PARAM_FIELD:
This constant is valid for substitutions only and means that one parameter can be defined for the user exit which is the field to be sustituted.
C_EXIT_PARAM_CLASS
valid for Rules, Validations and Substitutions, this parameter signifies that all the data (BKPF and BSEG data) will be passed as one parameter to the user exit. You will be passed a table containing all the relevant information. Have a look at the routine U101 to see how to access this data.
The last thing to include before the append is a text sting which is used to display the title of the user exit in an upcoming transaction
===========================================================================
'register' your exit in ZGGBS000, subroutine (FORM) GET_EXIT_TITLES, for example:
exits-name = 'U999'.
exits-param = c_exit_param_field.
exits-title = 'Substitute ZUONR from SGTXT'.
append exits.
Then add the subroutine (FORM) to hold the code:
form U999.
bseg-zuonr = bseg-sgtxt+0(10).
endform.
===========================================================================
===========================================================================
The substitution like this:
BSEG-SGTXT = '' AND BKPF-BLART = 'WE'
Our exit name is U900 and below is the code for the text substitution as
applied in the ABAP:
(in form get_exit_titles:)
exits-name = 'U900'.
exits-param = c_exit_param_none.
exits-title = 'Substitute BSEG-SGTXT with EKPO-TXZ01'.
APPEND exits
===========================================================================
===========================================================================
Substitutions allows you to populate vendor number (BSEG-LIFNR).
Create a STEP for item
The prerequisite:
SYST-TCODE = 'FB60' AND BSEG-KOART = 'S'
Create anx EXIT where you'll create the text for item.
To create the exit: copy the std program RGGBS000 in your ZGGBS000.
Here insert your exit, for example Z001.
So in the routine GET_EXIT_TITLES insert the name of your routine:
FORM get_exit_titles TABLES etab.
exits-name = 'Z001'.
exits-param = c_exit_param_class.
exits-title = 'MY EXIT'.
APPEND exits.
And the define the exit:
FORM z001.
ENDFORM.
Insert the name of your program in the table T80D
===========================================================================
Regards
Venkat

Similar Messages

  • Calling Oracle stored procedure with out param of user define type from Entity Framework 5 with code first

    Guys i am using Entity Framework 5 code first (I am not using edmx) with Oracle and all works good, Now i am trying to get data from stored procedure which is under package but stored procedure have out param which is user define type, Now my question is
    how i will call stored procedure from entity framework
    Thanks in advance.

    I agree with you, but issue is we have lots of existing store procedure, which we need to call where damn required. I am sure those will be few but still i need to find out.
    If you think you are going to get existing MS Stored Procedures  or Oracle Packages that had nothing to do with the ORM previously to work that are not geared to do simple CRUD operations with the ORM and the database tables, you have a rude awakening
    coming that's for sure. You had better look into using ADO.NET and Oracle Command objects and call those Oracle Packages by those means and use a datareader.
    You could use the EF backdoor, call Oracle Command object and use the Packages,  if that's even possible, just like you can use MS SQL Server Stored Procedures or in-line T-SQL via the EF backdoor.
    That's about your best shot.
    http://blogs.msdn.com/b/alexj/archive/2009/11/07/tip-41-how-to-execute-t-sql-directly-against-the-database.aspx

  • 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

  • 5.1.1 unknown or illegal user

    Can anyone tell me what I'm doing wrong here? First off, I'm doing direct LDAP rather than the dirsync stuff. I'm getting the following when doing an 'imsimta test -rewrite -debug [email protected]':
    Initializing mm_.
    Initializing mm_ submission.
    Checking identifiers.
    *** Debug output from initializing MM for submission:
    13:06:49.67: mmc_winit('l','[email protected]','[email protected]') called.
    13:06:49.67: Queue area size 23798402, temp area size 23798402
    13:06:49.67: 5949600 blocks of effective free queue space available; setting disk limit accordingly.
    13:06:49.67: Rewriting: Mbox = "postmaster", host = "isotope.rootprompt.net", domain = "$*", literal = "", tag = ""
    13:06:49.67: Rewrite: "$*", position 0, hash table -
    13:06:49.67: Found: "$E$F$U%[email protected]$V$H"
    13:06:49.67: Rewrite failed, not forward.
    13:06:49.67: Rewrite: "$*", position 1, hash table -
    13:06:49.67: Failed.
    13:06:49.67: Rewrite: "$*", position 0, rewrite database -
    13:06:49.67: Failed
    13:06:49.67: Rewriting: Mbox = "postmaster", host = "isotope", domain = "isotope.rootprompt.net", literal = "", tag = ""
    13:06:49.67: Rewrite: "isotope.rootprompt.net", position 0, hash table -
    13:06:49.67: Found: "$U%[email protected]"
    13:06:49.67: New mailbox: "postmaster".
    13:06:49.67: New host: "isotope.rootprompt.net".
    13:06:49.67: New route: "isotope.rootprompt.net".
    13:06:49.67: New channel system: "isotope.rootprompt.net".
    13:06:49.67: Looking up host "isotope.rootprompt.net".
    13:06:49.67: - found on channel l
    13:06:49.67: Routelocal flag set; scanning for % and !
    13:06:49.67: Rewriting: Mbox = "postmaster", host = "isotope.rootprompt.net", domain = "$*", literal = "", tag = ""
    13:06:49.67: Rewrite: "$*", position 0, hash table -
    13:06:49.67: Found: "$E$F$U%[email protected]$V$H"
    13:06:49.67: Rewrite failed, not forward.
    13:06:49.67: Rewrite: "$*", position 1, hash table -
    13:06:49.67: Failed.
    13:06:49.67: Rewrite: "$*", position 0, rewrite database -
    13:06:49.67: Failed
    13:06:49.67: Rewriting: Mbox = "postmaster", host = "isotope", domain = "isotope.rootprompt.net", literal = "", tag = ""
    13:06:49.67: Rewrite: "isotope.rootprompt.net", position 0, hash table -
    13:06:49.67: Found: "$U%[email protected]"
    13:06:49.67: New mailbox: "postmaster".
    13:06:49.67: New host: "isotope.rootprompt.net".
    13:06:49.67: New route: "isotope.rootprompt.net".
    13:06:49.67: New channel system: "isotope.rootprompt.net".
    13:06:49.67: Looking up host "isotope.rootprompt.net".
    13:06:49.67: - found on channel l
    13:06:49.67: Routelocal flag set; scanning for % and !
    13:06:49.67: Mapped return address: [email protected]
    *** Debug output from rewriting a forward header address:
    13:06:49.67: Rewriting: Mbox = "rbanniza", host = "rootprompt.net", domain = "$*", literal = "", tag = ""
    13:06:49.67: Rewrite: "$*", position 0, hash table -
    13:06:49.67: Found: "$E$F$U%[email protected]$V$H"
    13:06:49.67: Rewrite failed, not envelope.
    13:06:49.67: Rewrite: "$*", position 1, hash table -
    13:06:49.67: Failed.
    13:06:49.67: Rewrite: "$*", position 0, rewrite database -
    13:06:49.67: Failed
    13:06:49.67: Rewriting: Mbox = "rbanniza", host = "rootprompt", domain = "rootprompt.net", literal = "", tag = ""
    13:06:49.67: Rewrite: "rootprompt.net", position 0, hash table -
    13:06:49.67: Found: "$U%[email protected]"
    13:06:49.67: New mailbox: "rbanniza".
    13:06:49.67: New host: "rootprompt.net".
    13:06:49.67: New route: "isotope.rootprompt.net".
    13:06:49.67: New channel system: "isotope.rootprompt.net".
    13:06:49.67: Looking up host "isotope.rootprompt.net".
    13:06:49.67: - found on channel l
    13:06:49.67: Routelocal flag set; scanning for % and !
    13:06:49.67: Rewrite rules result: [email protected]
    13:06:49.68: Checking reverse URL cache for: [email protected]
    13:06:49.68: Applying reverse URL pattern ldap:///$V?mail?sub?$Q to: [email protected]
    13:06:49.70: Resulting URL: ldap:///o%3Drootprompt.net%2Cdc%3Drootprompt%2Cdc%3Dnet?mail?sub?(|([email protected])([email protected]))
    13:06:49.71: mmc_open_url called to open ldap:///o%3Drootprompt.net%2Cdc%3Drootprompt%2Cdc%3Dnet?mail?sub?(|([email protected])([email protected])), flags = 256
    13:06:49.71: URL with quotes stripped: ldap:///o%3Drootprompt.net%2Cdc%3Drootprompt%2Cdc%3Dnet?mail?sub?(|([email protected])([email protected]))
    13:06:49.71: LDAP URL identified
    13:06:49.71: URL context #1 will be used
    13:06:49.71: Performing URL search on: ldap:///o%3Drootprompt.net%2Cdc%3Drootprompt%2Cdc%3Dnet?mail?sub?(|([email protected])([email protected]))
    13:06:49.71: mmc_read_url result: [email protected]
    13:06:49.71: URL resolution returned: [email protected]
    forward channel = l
    channel description =
    channel user filter =
    dest channel filter =
    source channel filter =
    channel flags #0 = BIDIRECTIONAL MULTIPLE IMMNONURGENT NOSERVICEALL
    channel flags #1 = NOSMTP DEFAULT
    channel flags #2 = COPYSENDPOST COPYWARNPOST POSTHEADONLY HEADERINC NOEXPROUTE
    channel flags #3 = NOLOGGING NOGREY NORESTRICTED RETAINSECURITMULTIPARTS
    channel flags #4 = EIGHTBIT NOHEADERTRIM NOHEADERREAD RULES
    channel flags #5 =
    channel flags #6 = LOCALUSER REPORTHEADER
    channel flags #7 = NOSWITCHCHANNEL NOREMOTEHOST DATEFOUR DAYOFWEEK
    channel flags #8 = NODEFRAGMENT EXQUOTA REVERSE NOCONVERT_OCTET_STREAM
    channel flags #9 = NOTHURMAN INTERPRETENCODING USEINTERMEDIATE RECEIVEDFROM VALIDATELOCALSYSTEM NOTURN
    defaulthost = rootprompt.net rootprompt.net
    linelength = 1023
    channel env addr type = SOURCEROUTE
    channel hdr addr type = SOURCEROUTE
    channel official host = isotope.rootprompt.net
    channel queue 0 name = LOCAL_POOL
    channel queue 1 name = LOCAL_POOL
    channel queue 2 name = LOCAL_POOL
    channel queue 3 name = LOCAL_POOL
    channel after params =
    channel user name =
    urgentnotices = 1 2 4 7
    normalnotices = 1 2 4 7
    nonurgentnotices = 1 2 4 7
    channel rightslist ids =
    local behavior flags = %x7
    backward channel = l
    header To: address = [email protected]
    header From: address = [email protected]
    envelope To: address = [email protected] (route (isotope.rootprompt.net,isotope.rootprompt.net)) (host rootprompt.net)
    envelope From: address = [email protected]
    name =
    mbox = rbanniza
    Extracted address action list:
    [email protected]
    Extracted 733 address action list:
    [email protected]
    Address list expansion:
    [email protected]
    1 expansion total.
    *** Debug output from submitting an envelope address:
    13:06:49.73: mmc_wadr(0x0005d758,'[email protected]','[email protected]') called.
    13:06:49.73: Copy estimate before address addition is 1
    13:06:49.73: Parsing address [email protected]
    13:06:49.73: Rewriting: Mbox = "rbanniza", host = "rootprompt.net", domain = "$*", literal = "", tag = ""
    13:06:49.73: Rewrite: "$*", position 0, hash table -
    13:06:49.73: Found: "$E$F$U%[email protected]$V$H"
    13:06:49.73: Match, pattern = "rootprompt.net", current = "(*domaincheck*)"
    13:06:49.73: old state = not checked.
    13:06:49.73: Using result 1 from domain match cache.
    13:06:49.73: new state = succeeded.
    13:06:49.73: New mailbox: "rbanniza".
    13:06:49.73: New host: "rootprompt.net".
    13:06:49.73: New route: "isotope.rootprompt.net".
    13:06:49.73: New channel system: "isotope.rootprompt.net".
    13:06:49.73: Looking up host "isotope.rootprompt.net".
    13:06:49.73: - found on channel l
    13:06:49.73: Routelocal flag set; scanning for % and !
    13:06:49.73: Address [email protected] requires local processing.
    13:06:49.73: Variant #1 = [email protected]
    13:06:49.73: Variant #2 = *@rootprompt.net
    13:06:49.73: Checking for [email protected] in the system alias file
    13:06:49.73: - not found
    13:06:49.73: Checking for *@rootprompt.net in the system alias file
    13:06:49.73: - not found
    13:06:49.73: Checking [email protected] with URL template ldap:///$V?*?sub?$R
    13:06:49.73: LDAP URL template identified
    13:06:49.73: URL determined to be: ldap:///o%3Drootprompt.net%2Cdc%3Drootprompt%2Cdc%3Dnet?*?sub?(|([email protected])([email protected])([email protected]))
    13:06:49.73: URL context #1 will be used
    13:06:49.73: Using cached LDAP result for URL info: ldap:///$V?*?sub?$R|[email protected]|[email protected]
    13:06:49.73: Scanning LDAP result.
    13:06:49.73: Attribute: objectclass
    13:06:49.73: Attribute index: 0
    13:06:49.73: Attribute: inetuserstatus
    13:06:49.73: Attribute index: 1
    13:06:49.73: Attribute: mailuserstatus
    13:06:49.73: Attribute index: 2
    13:06:49.73: Attribute: uid
    13:06:49.73: Attribute index: 4
    13:06:49.73: Attribute: mail
    13:06:49.73: Attribute index: 5
    13:06:49.73: Attribute: mailhost
    13:06:49.73: Attribute index: 9
    13:06:49.73: Attribute: mailDeliveryOption
    13:06:49.73: Attribute index: 18
    13:06:49.73: Scanning complete, begin actions
    13:06:49.73: Object class: top
    13:06:49.73: Object class: person
    13:06:49.73: Object class: organizationalPerson
    13:06:49.73: Object class: inetorgperson
    13:06:49.74: Object class: inetUser
    13:06:49.74: Object class: inetSubscriber
    13:06:49.74: Object class: ipUser
    13:06:49.74: Object class: nsManagedPerson
    13:06:49.74: Object class: inetmailuser
    13:06:49.74: Object class: inetlocalmailrecipient
    13:06:49.74: Object class: userpresenceprofile
    13:06:49.74: User status = active
    13:06:49.74: Mail user status = active
    13:06:49.74: User UID RBanniza found.
    13:06:49.74: Processing mailhost attribute isotope
    13:06:49.74: Mailhost references remote system.
    13:06:49.74: Status for this entry = -3
    13:06:49.74: - URL match for [email protected]
    13:06:49.74: - [email protected]
    13:06:49.74: Alias loop; URL alias expansion disabled.
    13:06:49.74: Parsing address @isotope:[email protected]
    13:06:49.74: Rewriting: Mbox = "rbanniza", host = "isotope", domain = "$*", literal = "", tag = ""
    13:06:49.74: Rewrite: "$*", position 0, hash table -
    13:06:49.74: Found: "$E$F$U%[email protected]$V$H"
    13:06:49.74: Match, pattern = "isotope", current = "(*domaincheck*)"
    13:06:49.74: old state = not checked.
    13:06:49.74: Using result 0 from domain match cache.
    13:06:49.74: new state = fail pending.
    13:06:49.74: Rewrite failed due to channel mismatch.
    13:06:49.74: Rewrite: "$*", position 1, hash table -
    13:06:49.74: Failed.
    13:06:49.74: Rewrite: "$*", position 0, rewrite database -
    13:06:49.74: Failed
    13:06:49.74: Rewriting: Mbox = "rbanniza", host = "isotope", domain = "isotope", literal = "", tag = ""
    13:06:49.74: Rewrite: "isotope", position 0, hash table -
    13:06:49.74: Failed.
    13:06:49.74: Rewrite: "isotope", position 0, rewrite database -
    13:06:49.74: Failed
    13:06:49.74: Looking up host "isotope".
    13:06:49.74: - Not found
    13:06:49.74: Rewriting: Mbox = "rbanniza", host = "isotope", domain = ".", literal = "", tag = ""
    13:06:49.74: Rewrite: "*", position 0, hash table -
    13:06:49.74: Found: "$U%$&0.rootprompt.net"
    13:06:49.74: New mailbox: "rbanniza".
    13:06:49.74: New host: "isotope.rootprompt.net".
    13:06:49.74: New route: "isotope.rootprompt.net".
    13:06:49.74: New channel system: "isotope.rootprompt.net".
    13:06:49.74: Rescanning on.
    13:06:49.74: Rewriting: Mbox = "rbanniza", host = "isotope", domain = "isotope.rootprompt.net", literal = "", tag = ""
    13:06:49.74: Rewrite: "isotope.rootprompt.net", position 0, hash table -
    13:06:49.74: Found: "$U%[email protected]"
    13:06:49.74: New mailbox: "rbanniza".
    13:06:49.74: New host: "isotope.rootprompt.net".
    13:06:49.74: New route: "isotope.rootprompt.net".
    13:06:49.74: New channel system: "isotope.rootprompt.net".
    13:06:49.74: Looking up host "isotope.rootprompt.net".
    13:06:49.74: - found on channel l
    13:06:49.74: Rewriting: Mbox = "rbanniza", host = "rootprompt.net", domain = "$*", literal = "", tag = ""
    13:06:49.74: Rewrite: "$*", position 0, hash table -
    13:06:49.74: Found: "$E$F$U%[email protected]$V$H"
    13:06:49.74: Match, pattern = "rootprompt.net", current = "(*domaincheck*)"
    13:06:49.74: old state = not checked.
    13:06:49.74: Using result 1 from domain match cache.
    13:06:49.74: new state = succeeded.
    13:06:49.74: New mailbox: "rbanniza".
    13:06:49.74: New host: "rootprompt.net".
    13:06:49.74: New route: "isotope.rootprompt.net".
    13:06:49.74: New channel system: "isotope.rootprompt.net".
    13:06:49.74: Looking up host "isotope.rootprompt.net".
    13:06:49.74: - found on channel l
    13:06:49.74: Routelocal flag set; scanning for % and !
    13:06:49.74: Address [email protected] requires local processing.
    13:06:49.74: Variant #1 = [email protected]
    13:06:49.74: Variant #2 = *@rootprompt.net
    13:06:49.74: Checking for [email protected] in the system alias file13:06:49.74: - not found
    13:06:49.74: Checking for *@rootprompt.net in the system alias file
    13:06:49.74: - not found
    13:06:49.74: - orig_send_access mapping check: l|[email protected]|l|[email protected]
    13:06:49.74: - passed.
    13:06:49.74: - send_access mapping check: l|[email protected]|l|[email protected]
    13:06:49.75: - passed.
    13:06:49.75: - user rbanniza unknown.
    13:06:49.75: Reenabling URL alias expansion.
    13:06:49.75: - adding address [email protected] to headers.
    13:06:49.75: Copy estimate after address addition is 1
    Expanded address:
    [email protected]
    Submitted address list:
    Address list error -- 5.1.1 unknown or illegal user: [email protected]
    Submitted notifications list:
    [rbanniza@groomlake:~]$

    Found the answer, the culprit was someone must have accidentally deleted dirsync.opt

  • Can any one tell me how param is used in Jsp:setProperty ?

    Hi Can anyone please explain me with example how param attribute is used in <jsp:setProperty>?
    I have gone through the java doc but it still not clear to me....

    Try the [JSP syntax reference|http://java.sun.com/products/jsp/syntax/2.0/syntaxref2025.html#8856]
    It is very rare that you would use the param attribute, as most times you have your incoming parameter and bean property having the same name.
    Example:
    Say you navigate to http://localhost:8080/myApp/myPage.jsp?username=Bob
    That sends a request parameter "username" with the value "Bob"
    If we have a bean which also has a property username (getUsername(), setUsername()) (ie the property and the parameter have the same name) you can use the following jsp code:
    <jsp:useBean id="user" class="com.mypackage.User"/>
    <jsp:setProperty name="user" property="username">Translates approximately into
    User user = new User();
    user.setUsername(request.getParameter("username"));If instead the bean had a property "username" but the parameter was "userId"
    <jsp:useBean id="user" class="com.mypackage.User"/>
    <jsp:setProperty name="user" property="username" param="userId">
    User user = new User();
    user.setUsername(request.getParameter("userId"));Cheers,
    evnafets

  • Xsql:set-page-param from multirow select into array variable

    I'd like to set an XSQL page array variable to the result of a query that returns multiple rows.
    Can I do something like this:
    <xsql:set-page-param name="users[]">
    select username from all_users
    </xsql:set-page-param>
    The documentation only mentions usage like
    <xsql:set-page-param name="users[]" value="SCOTT SYS SYSTEM"/>

    The set page param is only designed to look at the first column of the first row of its query results.
    If you supplied a PL/SQL function that would return the list of users as a space-or-comma-separated string, then you could use:
    select your_function() as user_list from dual
    and then add the treat-list-as-array="yes" attribute to achieve this.

  • Problems mailing a local user

    root@db-prod-01 # imsimta version
    Sun Java(tm) System Messaging Server 6.2-6.01 (built Apr 3 2006)
    libimta.so 6.2-6.01 (built 11:20:35, Apr 3 2006)
    SunOS db-prod-01 5.10 Generic_118833-18 sun4u sparc SUNW,Sun-Fire-V490
    I was able to email this user before and now i can't. i am not sure what i change to this user to cause this error.
    any ideas on how to fix this?
    root@db-prod-01 # imsimta test -rewrite -debug help
    Initializing mm_.
    Initializing mm_ submission.
    Checking identifiers.
    *** Debug output from initializing MM for submission:
    16:03:45.70: Debug output enabled, message enqueue routines version V6.2-6.01 compiled Apr 3 200611:20:45
    16:03:45.70: mmc_winit('l','[email protected]','[email protected]') called.
    16:03:45.70: Queue area size 40868186, temp area size 9329806
    16:03:45.70: 10217046 blocks of effective free queue space available; setting disk limit accordingly.
    16:03:45.70: 4664903 blocks of free temporary space available; setting disk limit accordingly.
    16:03:45.70: Rewriting: Mbox = "postmaster", host = "db-prod-01.oswego.edu", domain = "$*", literal = "", tag = ""
    16:03:45.70: Rewrite: "$*", position 0, hash table -
    16:03:45.70: Found: "$A$E$F$U%[email protected]"
    16:03:45.70: Rewrite failed, not forward.
    16:03:45.70: Rewrite: "$*", position 1, hash table -
    16:03:45.70: Failed.
    16:03:45.70: Rewrite: "$*", position 0, rewrite database -
    16:03:45.70: Failed
    16:03:45.70: Rewriting: Mbox = "postmaster", host = "db-prod-01", domain = "db-prod-01.oswego.edu", literal = "", tag = ""
    16:03:45.70: Rewrite: "db-prod-01.oswego.edu", position 0, hash table -
    16:03:45.70: Found: "$U%[email protected]"
    16:03:45.70: New mailbox: "postmaster".
    16:03:45.70: New host: "db-prod-01.oswego.edu".
    16:03:45.70: New route: "db-prod-01.oswego.edu".
    16:03:45.70: New channel system: "db-prod-01.oswego.edu".
    16:03:45.70: Looking up host "db-prod-01.oswego.edu".
    16:03:45.70: - found on channel l
    16:03:45.70: Routelocal flag set; scanning for % and !
    16:03:45.70: Checking reverse URL cache for: [email protected]
    16:03:45.70: Applying reverse URL pattern ldap:///$V?$N?sub?$R to: [email protected]
    16:03:45.71: Resulting URL: ldap:///dc%3Doswego%2Cdc%3Dedu?preferredlanguage,mail,mailequivalentaddress?sub?(|([email protected])([email protected])([email protected])([email protected])([email protected])([email protected]))
    16:03:45.71: mmc_open_url called to open ldap:///dc%3Doswego%2Cdc%3Dedu?preferredlanguage,mail,mailequivalentaddress?sub?(|([email protected])([email protected])([email protected])([email protected])([email protected])([email protected])), flags = 384
    16:03:45.71: URL with quotes stripped: ldap:///dc%3Doswego%2Cdc%3Dedu?preferredlanguage,mail,mailequivalentaddress?sub?(|([email protected])([email protected])([email protected])([email protected])([email protected])([email protected]))
    16:03:45.71: LDAP URL identified
    16:03:45.71: URL context #1 will be used
    16:03:45.71: Performing URL search on: ldap:///dc%3Doswego%2Cdc%3Dedu?preferredlanguage,mail,mailequivalentaddress?sub?(|([email protected])([email protected])([email protected])([email protected])([email protected])([email protected]))
    16:03:45.72: mmc_read_url result: [cn=Postmaster,ou=Groups,dc=oswego,dc=edu]
    16:03:45.72: URL resolution returned: [cn=Postmaster,ou=Groups,dc=oswego,dc=edu]
    16:03:45.72: mmc_read_url result: [mail] [email protected]
    16:03:45.72: URL resolution returned: [mail] [email protected]
    16:03:45.72: Attribute index: 16
    16:03:45.72: LDAP URL produced address [email protected]
    16:03:45.72: No more result to return
    16:03:45.72: Override postmaster: [email protected]
    16:03:45.72: Mapped return address: [email protected]
    16:03:45.72: from_access mapping check: ||MAIL|l|[email protected]|
    16:03:45.72: - passed.
    16:03:45.72: Rewriting: Mbox = "postmaster", host = "db-prod-01.oswego.edu", domain = "$*", literal = "", tag = ""
    16:03:45.72: Rewrite: "$*", position 0, hash table -
    16:03:45.72: Found: "$A$E$F$U%[email protected]"
    16:03:45.72: Rewrite failed, not forward.
    16:03:45.72: Rewrite: "$*", position 1, hash table -
    16:03:45.72: Failed.
    16:03:45.72: Rewrite: "$*", position 0, rewrite database -
    16:03:45.72: Failed
    16:03:45.72: Rewriting: Mbox = "postmaster", host = "db-prod-01", domain = "db-prod-01.oswego.edu", literal = "", tag = ""
    16:03:45.72: Rewrite: "db-prod-01.oswego.edu", position 0, hash table -
    16:03:45.72: Found: "$U%[email protected]"
    16:03:45.72: New mailbox: "postmaster".
    16:03:45.72: New host: "db-prod-01.oswego.edu".
    16:03:45.72: New route: "db-prod-01.oswego.edu".
    16:03:45.72: New channel system: "db-prod-01.oswego.edu".
    16:03:45.72: Looking up host "db-prod-01.oswego.edu".
    16:03:45.72: - found on channel l
    16:03:45.72: Routelocal flag set; scanning for % and !
    *** Debug output from rewriting a forward header address:
    16:03:45.72: Rewriting: Mbox = "help", host = "oswego.edu", domain = "$*", literal = "", tag = ""
    16:03:45.72: Rewrite: "$*", position 0, hash table -
    16:03:45.72: Found: "$A$E$F$U%[email protected]"
    16:03:45.72: Rewrite failed, not envelope.
    16:03:45.72: Rewrite: "$*", position 1, hash table -
    16:03:45.72: Failed.
    16:03:45.72: Rewrite: "$*", position 0, rewrite database -
    16:03:45.72: Failed
    16:03:45.72: Rewriting: Mbox = "help", host = "oswego", domain = "oswego.edu", literal = "", tag = ""
    16:03:45.72: Rewrite: "oswego.edu", position 0, hash table -
    16:03:45.72: Found: "$U%[email protected]"
    16:03:45.72: New mailbox: "help".
    16:03:45.72: New host: "oswego.edu".
    16:03:45.72: New route: "db-prod-01.oswego.edu".
    16:03:45.72: New channel system: "db-prod-01.oswego.edu".
    16:03:45.72: Looking up host "db-prod-01.oswego.edu".
    16:03:45.72: - found on channel l
    16:03:45.72: Routelocal flag set; scanning for % and !
    16:03:45.72: Rewrite rules result: [email protected]
    16:03:45.72: Checking reverse URL cache for: [email protected]
    16:03:45.72: Applying reverse URL pattern ldap:///$V?$N?sub?$R to: [email protected]
    16:03:45.73: Resulting URL: ldap:///dc%3Doswego%2Cdc%3Dedu?preferredlanguage,mail,mailequivalentaddress?sub?(|([email protected])([email protected])([email protected]))
    16:03:45.73: mmc_open_url called to open ldap:///dc%3Doswego%2Cdc%3Dedu?preferredlanguage,mail,mailequivalentaddress?sub?(|([email protected])([email protected])([email protected])), flags = 384
    16:03:45.73: URL with quotes stripped: ldap:///dc%3Doswego%2Cdc%3Dedu?preferredlanguage,mail,mailequivalentaddress?sub?(|([email protected])([email protected])([email protected]))
    16:03:45.73: LDAP URL identified
    16:03:45.73: URL context #1 will be used
    16:03:45.73: Performing URL search on: ldap:///dc%3Doswego%2Cdc%3Dedu?preferredlanguage,mail,mailequivalentaddress?sub?(|([email protected])([email protected])([email protected]))
    16:03:45.73: Search succeeded but result set was empty
    16:03:45.73: URL resolution failed, status = 0
    *** Debug output from rewriting a forward envelope address:
    16:03:45.73: Rewriting: Mbox = "help", host = "oswego.edu", domain = "$*", literal = "", tag = ""
    16:03:45.73: Rewrite: "$*", position 0, hash table -
    16:03:45.73: Found: "$A$E$F$U%[email protected]"
    16:03:45.73: Match, pattern = "oswego.edu", current = "(*domaincheck*)"
    16:03:45.73: old state = not checked.
    16:03:45.73: Domain check on oswego.edu.
    16:03:45.73: Added domain result 1 to cache for oswego.edu.
    16:03:45.73: new state = succeeded.
    16:03:45.73: New mailbox: "help".
    16:03:45.73: New host: "oswego.edu".
    16:03:45.73: New route: "db-prod-01.oswego.edu".
    16:03:45.73: New channel system: "db-prod-01.oswego.edu".
    16:03:45.73: Looking up host "db-prod-01.oswego.edu".
    16:03:45.73: - found on channel l
    16:03:45.73: Routelocal flag set; scanning for % and !
    forward channel = l
    channel description =
    channel user filter =
    dest channel filter =
    source channel filter =
    channel flags #0 = BIDIRECTIONAL MULTIPLE IMMNONURGENT NOSERVICEALL
    channel flags #1 = NOSMTP DEFAULT
    channel flags #2 = COPYSENDPOST COPYWARNPOST POSTHEADONLY HEADERINC NOEXPROUTE
    channel flags #3 = LOGGING NOGREY NORESTRICTED RETAINSECURITYMULTIPARTS
    channel flags #4 = EIGHTBIT NOHEADERTRIM NOHEADERREAD RULES
    channel flags #5 =
    channel flags #6 = LOCALUSER REPORTNOTARY
    channel flags #7 = NOSWITCHCHANNEL NOREMOTEHOST DATEFOUR DAYOFWEEK
    channel flags #8 = NODEFRAGMENT EXQUOTA REVERSE NOCONVERT_OCTET_STREAM
    channel flags #9 = NOTHURMAN INTERPRETENCODING USEINTERMEDIATE RECEIVEDFROM VALIDATELOCALSYSTEM NOTURN
    defaulthost = oswego.edu oswego.edu
    linelength = 1023
    channel env addr type = SOURCEROUTE
    channel hdr addr type = SOURCEROUTE
    channel official host = db-prod-01.oswego.edu
    channel queue 0 name = LOCAL_POOL
    channel queue 1 name = LOCAL_POOL
    channel queue 2 name = LOCAL_POOL
    channel queue 3 name = LOCAL_POOL
    channel after params =
    channel user name =
    urgentnotices = 1 2 4 7
    normalnotices = 1 2 4 7
    nonurgentnotices = 1 2 4 7
    channel rightslist ids =
    local behavior flags = %x7
    expandchannel =
    notificationchannel =
    dispositionchannel =
    saslswitchchannel =
    tlsswitchchannel =
    backward channel = l
    header To: address = [email protected]
    header From: address = [email protected]
    envelope To: address = [email protected] (route (db-prod-01.oswego.edu,db-prod-01.oswego.edu)) (host oswego.edu)
    envelope From: address = [email protected]
    name =
    mbox = help
    Extracted address action list:
    [email protected]
    Extracted 733 address action list:
    [email protected]
    Address list expansion:
    *** Debug output from alias expansion:
    16:03:45.73: Inner expand, level = 0, mailbox = help
    16:03:45.73: Rewriting: Mbox = "help", host = "oswego.edu", domain = "$*", literal = "", tag = ""
    16:03:45.73: Rewrite: "$*", position 0, hash table -
    16:03:45.73: Found: "$A$E$F$U%[email protected]"
    16:03:45.73: Match, pattern = "oswego.edu", current = "(*domaincheck*)"
    16:03:45.73: old state = not checked.
    16:03:45.73: Using result 1 from domain match cache.
    16:03:45.73: new state = succeeded.
    16:03:45.73: New mailbox: "help".
    16:03:45.73: New host: "oswego.edu".
    16:03:45.73: New route: "db-prod-01.oswego.edu".
    16:03:45.73: New channel system: "db-prod-01.oswego.edu".
    16:03:45.73: Looking up host "db-prod-01.oswego.edu".
    16:03:45.73: - found on channel l
    16:03:45.73: Routelocal flag set; scanning for % and !
    16:03:45.73: Reparsed mailbox: help
    16:03:45.73: Reparsed host: oswego.edu
    16:03:45.73: Variant #1 = [email protected]
    16:03:45.73: Variant #2 = *@oswego.edu
    16:03:45.73: Variant #3 = help
    16:03:45.73: LDAP URL template identified
    16:03:45.73: URL determined to be: ldap:///dc%3Doswego%2Cdc%3Dedu?*?sub?(|([email protected])([email protected])([email protected]))
    16:03:45.73: URL context #1 will be used
    16:03:45.73: Performing URL search on: ldap:///dc%3Doswego%2Cdc%3Dedu?objectclass,inetuserstatus,mailuserstatus,inetMailGroupStatus,uid,preferredLanguage,mailRoutingAddress,mailDeliveryOption,mail,mailAlternateAddress,mailEquivalentAddress,vacationStartDate,vacationEndDate,mailConversionTag,mailMsgMaxBlocks,mailhost,mailQuota,mailMsgQuota,mailProgramDeliveryInfo,mailDeliveryFileURL,mailDeliveryFile,mailAutoReplyMode,mailAutoReplySubject,mailAutoReplyText,mailAutoReplyTextInternal,mailAutoReplyTimeOut,mailSieveRuleSource,mailForwardingAddress,mailDeferProcessing,mgrpMsgRejectAction,mgrpRejectText,mgrpMsgRejectText,mgrpBroadcasterPolicy,mgrpDisallowedBroadcaster,mgrpAllowedBroadcaster,mgrpDisallowedDomain,mgrpAllowedDomain,mgrpMsgMaxSize,mgrpAuthPassword,mgrpModerator,mgrpDeliverTo,memberURL,UniqueMember,mgrpRFC822MailMember,rfc822MailMember,mgrpErrorsTo,mgrpAddHeader,mgrpRemoveHeader,mgrpMsgPrefixText,mgrpMsgSuffixText,mgmanMemberVisibility,expandable?sub?(|([email protected])([email protected])(ma16:03:45.73: Search succeeded but 0 entries returned
    16:03:45.73: No matching entries were found that were valid
    16:03:45.73: Status for this address = 0
    0 expansion total.
    *** Debug output from submitting an envelope address:
    16:03:45.73: mmc_wadr(0x006a7670,'help','help') called.
    16:03:45.73: Copy estimate before address addition is 1
    16:03:45.73: Parsing address help
    16:03:45.73: Rewriting: Mbox = "help", host = "oswego.edu", domain = "$*", literal = "", tag = ""
    16:03:45.73: Rewrite: "$*", position 0, hash table -
    16:03:45.73: Found: "$A$E$F$U%[email protected]"
    16:03:45.73: Match, pattern = "oswego.edu", current = "(*domaincheck*)"
    16:03:45.73: old state = not checked.
    16:03:45.73: Using result 1 from domain match cache.
    16:03:45.73: new state = succeeded.
    16:03:45.73: New mailbox: "help".
    16:03:45.73: New host: "oswego.edu".
    16:03:45.73: New route: "db-prod-01.oswego.edu".
    16:03:45.73: New channel system: "db-prod-01.oswego.edu".
    16:03:45.73: Looking up host "db-prod-01.oswego.edu".
    16:03:45.73: - found on channel l
    16:03:45.73: Routelocal flag set; scanning for % and !
    16:03:45.73: Address [email protected] requires local processing.
    16:03:45.73: Variant #1 = [email protected]
    16:03:45.73: Variant #2 = *@oswego.edu
    16:03:45.73: Variant #3 = help
    16:03:45.73: Checking for [email protected] in the system alias file
    16:03:45.73: - not found
    16:03:45.73: Checking for *@oswego.edu in the system alias file
    16:03:45.73: - not found
    16:03:45.73: Checking for help in the system alias file
    16:03:45.73: - not found
    16:03:45.73: Checking [email protected] with URL template ldap:///$V?*?sub?$R
    16:03:45.73: LDAP URL template identified
    16:03:45.73: URL determined to be: ldap:///dc%3Doswego%2Cdc%3Dedu?*?sub?(|([email protected])([email protected])([email protected]))
    16:03:45.73: URL context #1 will be used
    16:03:45.73: Performing URL search on: ldap:///dc%3Doswego%2Cdc%3Dedu?objectclass,inetuserstatus,mailuserstatus,inetMailGroupStatus,uid,preferredLanguage,mailRoutingAddress,mailDeliveryOption,mail,mailAlternateAddress,mailEquivalentAddress,vacationStartDate,vacationEndDate,mailConversionTag,mailMsgMaxBlocks,mailhost,mailQuota,mailMsgQuota,mailProgramDeliveryInfo,mailDeliveryFileURL,mailDeliveryFile,mailAutoReplyMode,mailAutoReplySubject,mailAutoReplyText,mailAutoReplyTextInternal,mailAutoReplyTimeOut,mailSieveRuleSource,mailForwardingAddress,mailDeferProcessing,mgrpMsgRejectAction,mgrpRejectText,mgrpMsgRejectText,mgrpBroadcasterPolicy,mgrpDisallowedBroadcaster,mgrpAllowedBroadcaster,mgrpDisallowedDomain,mgrpAllowedDomain,mgrpMsgMaxSize,mgrpAuthPassword,mgrpModerator,mgrpDeliverTo,memberURL,UniqueMember,mgrpRFC822MailMember,rfc822MailMember,mgrpErrorsTo,mgrpAddHeader,mgrpRemoveHeader,mgrpMsgPrefixText,mgrpMsgSuffixText,mgmanMemberVisibility,expandable?sub?(|([email protected])([email protected])(ma16:03:45.74: Search succeeded but 0 entries returned
    16:03:45.74: No matching entries were found that were valid
    16:03:45.74: Status for this address = 0
    16:03:45.74: - adding address [email protected] to headers.
    16:03:45.74: Copy estimate after address addition is 1
    Expanded address:
    [email protected]
    Submitted address list:
    Address list error -- 5.1.1 unknown or illegal alias: help
    Submitted notifications list:

    okay i hope this is better info
    14/Aug/2006:16:39:23 -0400] conn=67777 op=-1 msgId=-1 - fd=130 slot=130 LDAP connection from 129.3.22.160 to 129.3.22.160
    [14/Aug/2006:16:39:23 -0400] conn=67777 op=0 msgId=1 - BIND dn="cn=msg-config, cn=Sun ONE Messaging Suite, cn=Server Group, cn=db-prod-01.oswego.edu, ou=oswego.edu, o=NetscapeRoot" method=128 version=2
    [14/Aug/2006:16:39:23 -0400] conn=67777 op=0 msgId=1 - RESULT err=0 tag=97 nentries=0 etime=0 dn="cn=msg-config,cn=sun one messaging suite,cn=server group,cn=db-prod-01.oswego.edu,ou=oswego.edu,o=netscaperoot"
    [14/Aug/2006:16:39:23 -0400] conn=67777 op=1 msgId=2 - SRCH base="cn=configuration,cn=msg-config,cn=sun one messaging suite,cn=server group,cn=db-prod-01.oswego.edu,ou=oswego.edu,o=netscaperoot" scope=2 filter="(objectClass=*)" attrs=ALL
    [14/Aug/2006:16:39:24 -0400] conn=67777 op=1 msgId=2 - RESULT err=0 tag=101 nentries=1028 etime=1
    [14/Aug/2006:16:39:24 -0400] conn=67778 op=-1 msgId=-1 - fd=135 slot=135 LDAP connection from 129.3.22.160 to 129.3.22.160
    [14/Aug/2006:16:39:24 -0400] conn=67778 op=0 msgId=1 - BIND dn="uid=msg-admin-db-prod-01.oswego.edu-20060626211223Z, ou=People, dc=oswego,dc=edu" method=128 version=3
    [14/Aug/2006:16:39:24 -0400] conn=67778 op=0 msgId=1 - RESULT err=0 tag=97 nentries=0 etime=0 dn="uid=msg-admin-db-prod-01.oswego.edu-20060626211223z,ou=people,dc=oswego,dc=edu"
    [14/Aug/2006:16:39:24 -0400] conn=67778 op=1 msgId=2 - SRCH base="dc=db-prod-01,dc=oswego,dc=edu,o=internet" scope=0 filter="(|(objectClass=inetDomain)(objectClass=inetdomainalias))" attrs=ALL
    [14/Aug/2006:16:39:24 -0400] conn=67778 op=1 msgId=2 - RESULT err=0 tag=101 nentries=1 etime=0
    [14/Aug/2006:16:39:24 -0400] conn=67778 op=2 msgId=3 - SRCH base="dc=oswego,dc=edu,o=internet" scope=0 filter="(|(objectClass=inetDomain)(objectClass=inetdomainalias))" attrs=ALL
    [14/Aug/2006:16:39:24 -0400] conn=67778 op=2 msgId=3 - RESULT err=0 tag=101 nentries=1 etime=0
    [14/Aug/2006:16:39:24 -0400] conn=67778 op=3 msgId=4 - SRCH base="dc=oswego,dc=edu" scope=0 filter="(objectClass=*)" attrs=ALL
    [14/Aug/2006:16:39:24 -0400] conn=67778 op=3 msgId=4 - RESULT err=0 tag=101 nentries=1 etime=0
    [14/Aug/2006:16:39:24 -0400] conn=67778 op=4 msgId=5 - SRCH base="dc=oswego,dc=edu" scope=2 filter="(|([email protected])([email protected])([email protected])([email protected])([email protected])([email protected]))" attrs="preferredLanguage mail mailEquivalentAddress"
    [14/Aug/2006:16:39:24 -0400] conn=67778 op=4 msgId=5 - RESULT err=0 tag=101 nentries=1 etime=0
    [14/Aug/2006:16:39:24 -0400] conn=67778 op=5 msgId=6 - SRCH base="dc=oswego,dc=edu" scope=2 filter="(|([email protected])([email protected])([email protected]))" attrs="preferredLanguage mail mailEquivalentAddress"
    [14/Aug/2006:16:39:24 -0400] conn=67778 op=5 msgId=6 - RESULT err=0 tag=101 nentries=0 etime=0
    [14/Aug/2006:16:39:24 -0400] conn=67778 op=6 msgId=7 - SRCH base="dc=oswego,dc=edu" scope=2 filter="(|([email protected])([email protected])([email protected]))" attrs="objectClass inetUserStatus mailUserStatus inetMailGroupStatus uid preferredLanguage mailRoutingAddress mailDeliveryOption mail mailAlternateAddress mailEquivalentAddress vacationStartDate vacationEndDate mailConversionTag mailMsgMaxBlocks mailHost mailQuota mailMsgQuota mailProgramDeliveryInfo mailDeliveryFileURL maildeliveryfile mailAutoReplyMode mailAutoReplySubject mailAutoReplyText mailAutoReplyTextInternal mailAutoReplyTimeout mailSieveRuleSource mailForwardingAddress mailDeferProcessing mgrpMsgRejectAction mgrprejecttext mgrpMsgRejectText mgrpBroadcasterPolicy mgrpDisallowedBroadcaster mgrpAllowedBroadcaster mgrpDisallowedDomain mgrpAllowedDomain mgrpMsgMaxsize mgrpAuthPassword mgrpModerator mgrpDeliverTo memberURL uniqueMember mgrpRFC822MailMember rfc822mailmember mgrpErrorsTo mgrpAddHeader mgrpRemoveHeader mgrpMsgPrefixText mgrpMsgSuffixText mgmanMemberVisibility expandable"
    [14/Aug/2006:16:39:24 -0400] conn=67778 op=6 msgId=7 - RESULT err=0 tag=101 nentries=0 etime=0
    [14/Aug/2006:16:39:24 -0400] conn=67778 op=7 msgId=8 - SRCH base="dc=oswego,dc=edu" scope=2 filter="(|([email protected])([email protected])([email protected]))" attrs="objectClass inetUserStatus mailUserStatus inetMailGroupStatus uid preferredLanguage mailRoutingAddress mailDeliveryOption mail mailAlternateAddress mailEquivalentAddress vacationStartDate vacationEndDate mailConversionTag mailMsgMaxBlocks mailHost mailQuota mailMsgQuota mailProgramDeliveryInfo mailDeliveryFileURL maildeliveryfile mailAutoReplyMode mailAutoReplySubject mailAutoReplyText mailAutoReplyTextInternal mailAutoReplyTimeout mailSieveRuleSource mailForwardingAddress mailDeferProcessing mgrpMsgRejectAction mgrprejecttext mgrpMsgRejectText mgrpBroadcasterPolicy mgrpDisallowedBroadcaster mgrpAllowedBroadcaster mgrpDisallowedDomain mgrpAllowedDomain mgrpMsgMaxsize mgrpAuthPassword mgrpModerator mgrpDeliverTo memberURL uniqueMember mgrpRFC822MailMember rfc822mailmember mgrpErrorsTo mgrpAddHeader mgrpRemoveHeader mgrpMsgPrefixText mgrpMsgSuffixText mgmanMemberVisibility expandable"
    [14/Aug/2006:16:39:24 -0400] conn=67778 op=7 msgId=8 - RESULT err=0 tag=101 nentries=0 etime=0
    [14/Aug/2006:16:39:24 -0400] conn=67777 op=-1 msgId=-1 - closing - B1
    [14/Aug/2006:16:39:24 -0400] conn=67777 op=-1 msgId=-1 - closed.
    [14/Aug/2006:16:39:24 -0400] conn=67778 op=-1 msgId=-1 - closing - B1
    [14/Aug/2006:16:39:24 -0400] conn=67778 op=-1 msgId=-1 - closed.
    [14/Aug/2006:16:39:29 -0400] conn=67624 op=182 msgId=183 - SRCH base="dc=asu,dc=edu,o=internet" scope=0 filter="(|(objectClass=inetDomain)(objectClass=inetdomainalias))" attrs=ALL
    [14/Aug/2006:16:39:29 -0400] conn=67624 op=182 msgId=183 - RESULT err=32 tag=101 nentries=0 etime=0

  • SMTP Error 5.1.1 ... User Unknown Error

    Hi All,
    I have installed Sun Java System Mesaaging Server 2005Q4 version. I have to configure the domain such that it doesnt conflict with the default domain in the organization. Say, if the default domain is abc.com, I have to a create a domain x123.abc.com where x123 will be the hostname.
    I am not sure if this is possbile, but when I tried to sent email by making x123.abc.com as my default domain I get the SMTP error 5.1.1 while trying to send the mail.
    It would be really helpful if someone could help me.
    Thanks & Regards,
    Soma.

    Hi and thanks for the response,
    Firstly I am not using MX and x123 will be my host machine where I have installed my Messaging. I am not using smtp auth, I am addressing the message to [email protected].
    And for Jay,
    I tried to send mail from and to the admin user [email protected].
    I ran the command imsimta and the result is below,
    root@s1009 # clear
    root@s1009 # ./imsimta test -rewrite -debug [email protected]
    Initializing mm_.
    Initializing mm_ submission.
    Checking identifiers.
    *** Debug output from initializing MM for submission:
    10:28:27.82: Debug output enabled, message enqueue routines version V6.2-3.04 compiled Jul 15 200501:43:19
    10:28:27.82: mmc_winit('l','[email protected]','[email protected]') called.
    10:28:27.82: Queue area size 29579486, temp area size 1175898
    10:28:27.82: 7394871 blocks of effective free queue space available; setting disk limit accordingly.
    10:28:27.82: 587949 blocks of free temporary space available; setting disk limit accordingly.
    10:28:27.82: Rewriting: Mbox = "postmaster", host = "s1009.prodapt.com", domain = "$*", literal = "", tag = ""
    10:28:27.82: Rewrite: "$*", position 0, hash table -
    10:28:27.82: Found: "$A$E$F$U%[email protected]"
    10:28:27.82: Rewrite failed, not forward.
    10:28:27.82: Rewrite: "$*", position 1, hash table -
    10:28:27.83: Failed.
    10:28:27.83: Rewrite: "$*", position 0, rewrite database -
    10:28:27.83: Failed
    10:28:27.83: Rewriting: Mbox = "postmaster", host = "s1009", domain = "s1009.prodapt.com", literal = "", tag = ""
    10:28:27.83: Rewrite: "s1009.prodapt.com", position 0, hash table -
    10:28:27.83: Found: "$U%[email protected]"
    10:28:27.83: New mailbox: "postmaster".
    10:28:27.83: New host: "s1009.prodapt.com".
    10:28:27.83: New route: "s1009.prodapt.com".
    10:28:27.83: New channel system: "s1009.prodapt.com".
    10:28:27.83: Looking up host "s1009.prodapt.com".
    10:28:27.83: - found on channel l
    10:28:27.83: Routelocal flag set; scanning for % and !
    10:28:27.83: Checking reverse URL cache for: [email protected]
    10:28:27.83: Applying reverse URL pattern ldap:///$V?$N?sub?$R to: [email protected]
    10:28:27.88: Resulting URL: ldap:///o%3Ds1009.prodapt.com%2Cdc%3Dprodapt%2Cdc%3Dcom?preferredlanguage,mail,mailequivalentaddress?sub?(|([email protected])([email protected])([email protected]))
    10:28:27.88: mmc_open_url called to open ldap:///o%3Ds1009.prodapt.com%2Cdc%3Dprodapt%2Cdc%3Dcom?preferredlanguage,mail,mailequivalentaddress?sub?(|([email protected])([email protected])([email protected])), flags = 384
    10:28:27.88: URL with quotes stripped: ldap:///o%3Ds1009.prodapt.com%2Cdc%3Dprodapt%2Cdc%3Dcom?preferredlanguage,mail,mailequivalentaddress?sub?(|([email protected])([email protected])([email protected]))
    10:28:27.88: LDAP URL identified
    10:28:27.88: URL context #1 will be used
    10:28:27.88: Performing URL search on: ldap:///o%3Ds1009.prodapt.com%2Cdc%3Dprodapt%2Cdc%3Dcom?preferredlanguage,mail,mailequivalentaddress?sub?(|([email protected])([email protected])([email protected]))
    10:28:27.93: mmc_read_url result: [cn=Postmaster,ou=Groups,o=s1009.prodapt.com,dc=prodapt,dc=com]
    10:28:27.93: URL resolution returned: [cn=Postmaster,ou=Groups,o=s1009.prodapt.com,dc=prodapt,dc=com]
    10:28:27.93: mmc_read_url result: [mail] [email protected]
    10:28:27.93: URL resolution returned: [mail] [email protected]
    10:28:27.93: Attribute index: 16
    10:28:27.93: LDAP URL produced address [email protected]
    10:28:27.93: No more result to return
    10:28:27.93: Override postmaster: [email protected]
    10:28:27.93: Mapped return address: [email protected]
    10:28:27.93: from_access mapping check: ||MAIL|l|[email protected]|
    10:28:27.93: - passed.
    10:28:27.93: Rewriting: Mbox = "postmaster", host = "s1009.prodapt.com", domain = "$*", literal = "", tag = ""
    10:28:27.93: Rewrite: "$*", position 0, hash table -
    10:28:27.93: Found: "$A$E$F$U%[email protected]"
    10:28:27.93: Rewrite failed, not forward.
    10:28:27.93: Rewrite: "$*", position 1, hash table -
    10:28:27.93: Failed.
    10:28:27.93: Rewrite: "$*", position 0, rewrite database -
    10:28:27.93: Failed
    10:28:27.93: Rewriting: Mbox = "postmaster", host = "s1009", domain = "s1009.prodapt.com", literal = "", tag = ""
    10:28:27.93: Rewrite: "s1009.prodapt.com", position 0, hash table -
    10:28:27.93: Found: "$U%[email protected]"
    10:28:27.94: New mailbox: "postmaster".
    10:28:27.94: New host: "s1009.prodapt.com".
    10:28:27.94: New route: "s1009.prodapt.com".
    10:28:27.94: New channel system: "s1009.prodapt.com".
    10:28:27.94: Looking up host "s1009.prodapt.com".
    10:28:27.94: - found on channel l
    10:28:27.94: Routelocal flag set; scanning for % and !
    *** Debug output from rewriting a forward header address:
    10:28:27.94: Rewriting: Mbox = "Store.Administrator", host = "s1009.prodapt.com", domain = "$*", literal = "", tag = ""
    10:28:27.94: Rewrite: "$*", position 0, hash table -
    10:28:27.94: Found: "$A$E$F$U%[email protected]"
    10:28:27.94: Rewrite failed, not envelope.
    10:28:27.94: Rewrite: "$*", position 1, hash table -
    10:28:27.94: Failed.
    10:28:27.94: Rewrite: "$*", position 0, rewrite database -
    10:28:27.94: Failed
    10:28:27.94: Rewriting: Mbox = "Store.Administrator", host = "s1009", domain = "s1009.prodapt.com", literal = "", tag = ""
    10:28:27.94: Rewrite: "s1009.prodapt.com", position 0, hash table -
    10:28:27.94: Found: "$U%[email protected]"
    10:28:27.94: New mailbox: "Store.Administrator".
    10:28:27.94: New host: "s1009.prodapt.com".
    10:28:27.94: New route: "s1009.prodapt.com".
    10:28:27.94: New channel system: "s1009.prodapt.com".
    10:28:27.94: Looking up host "s1009.prodapt.com".
    10:28:27.94: - found on channel l
    10:28:27.94: Routelocal flag set; scanning for % and !
    10:28:27.94: Rewrite rules result: [email protected]
    10:28:27.94: Checking reverse URL cache for: [email protected]
    10:28:27.94: Applying reverse URL pattern ldap:///$V?$N?sub?$R to: [email protected]
    10:28:27.94: Resulting URL: ldap:///o%3Ds1009.prodapt.com%2Cdc%3Dprodapt%2Cdc%3Dcom?preferredlanguage,mail,mailequivalentaddress?sub?(|([email protected])([email protected])([email protected]))
    10:28:27.94: mmc_open_url called to open ldap:///o%3Ds1009.prodapt.com%2Cdc%3Dprodapt%2Cdc%3Dcom?preferredlanguage,mail,mailequivalentaddress?sub?(|([email protected])([email protected])([email protected])), flags = 384
    10:28:27.94: URL with quotes stripped: ldap:///o%3Ds1009.prodapt.com%2Cdc%3Dprodapt%2Cdc%3Dcom?preferredlanguage,mail,mailequivalentaddress?sub?(|([email protected])([email protected])([email protected]))
    10:28:27.94: LDAP URL identified
    10:28:27.94: URL context #1 will be used
    10:28:27.94: Performing URL search on: ldap:///o%3Ds1009.prodapt.com%2Cdc%3Dprodapt%2Cdc%3Dcom?preferredlanguage,mail,mailequivalentaddress?sub?(|([email protected])([email protected])([email protected]))
    10:28:27.99: mmc_read_url result: [uid=admin, ou=People, o=s1009.prodapt.com,dc=prodapt,dc=com]
    10:28:27.99: URL resolution returned: [uid=admin, ou=People, o=s1009.prodapt.com,dc=prodapt,dc=com]
    10:28:27.99: mmc_read_url result: [mail] [email protected]
    10:28:27.99: URL resolution returned: [mail] [email protected]
    10:28:27.99: Attribute index: 16
    10:28:27.99: LDAP URL produced address [email protected]
    10:28:27.99: No more result to return
    *** Debug output from rewriting a forward envelope address:
    10:28:27.99: Rewriting: Mbox = "Store.Administrator", host = "s1009.prodapt.com", domain = "$*", literal = "", tag = ""
    10:28:27.99: Rewrite: "$*", position 0, hash table -
    10:28:27.99: Found: "$A$E$F$U%[email protected]"
    10:28:27.99: Match, pattern = "s1009.prodapt.com", current = "(*domaincheck*)"
    10:28:27.99: old state = not checked.
    10:28:27.99: Domain check on s1009.prodapt.com.
    10:28:27.99: Added domain result 1 to cache for s1009.prodapt.com.
    10:28:27.99: new state = succeeded.
    10:28:27.99: New mailbox: "Store.Administrator".
    10:28:27.99: New host: "s1009.prodapt.com".
    10:28:27.99: New route: "s1009.prodapt.com".
    10:28:27.99: New channel system: "s1009.prodapt.com".
    10:28:27.99: Looking up host "s1009.prodapt.com".
    10:28:27.99: - found on channel l
    10:28:27.99: Routelocal flag set; scanning for % and !
    forward channel = l
    channel description =
    channel user filter =
    dest channel filter =
    source channel filter =
    channel flags #0 = BIDIRECTIONAL MULTIPLE IMMNONURGENT NOSERVICEALL
    channel flags #1 = NOSMTP DEFAULT
    channel flags #2 = COPYSENDPOST COPYWARNPOST POSTHEADONLY HEADERINC NOEXPROUTE
    channel flags #3 = NOLOGGING NOGREY NORESTRICTED RETAINSECURITYMULTIPARTS
    channel flags #4 = EIGHTBIT NOHEADERTRIM NOHEADERREAD RULES
    channel flags #5 =
    channel flags #6 = LOCALUSER REPORTNOTARY
    channel flags #7 = NOSWITCHCHANNEL NOREMOTEHOST DATEFOUR DAYOFWEEK
    channel flags #8 = NODEFRAGMENT EXQUOTA REVERSE NOCONVERT_OCTET_STREAM
    channel flags #9 = NOTHURMAN INTERPRETENCODING USEINTERMEDIATE RECEIVEDFROM VALIDATELOCALSYSTEM NOTURN
    defaulthost = s1009.prodapt.com s1009.prodapt.com
    linelength = 1023
    channel env addr type = SOURCEROUTE
    channel hdr addr type = SOURCEROUTE
    channel official host = s1009.prodapt.com
    channel queue 0 name = LOCAL_POOL
    channel queue 1 name = LOCAL_POOL
    channel queue 2 name = LOCAL_POOL
    channel queue 3 name = LOCAL_POOL
    channel after params =
    channel user name =
    urgentnotices = 1 2 4 7
    normalnotices = 1 2 4 7
    nonurgentnotices = 1 2 4 7
    channel rightslist ids =
    local behavior flags = %x7
    expandchannel =
    notificationchannel =
    dispositionchannel =
    saslswitchchannel =
    tlsswitchchannel =
    backward channel = l
    header To: address = [email protected]
    header From: address = [email protected]
    envelope To: address = [email protected] (route (s1009.prodapt.com,s1009.prodapt.com)) (host s1009.prodapt.com)
    envelope From: address = [email protected]
    name =
    mbox = Store.Administrator
    Extracted address action list:
    [email protected]
    Extracted 733 address action list:
    [email protected]
    Address list expansion:
    *** Debug output from alias expansion:
    10:28:27.99: Inner expand, level = 0, mailbox = [email protected]
    10:28:27.99: Rewriting: Mbox = "Store.Administrator", host = "s1009.prodapt.com", domain = "$*", literal = "", tag = ""
    10:28:27.99: Rewrite: "$*", position 0, hash table -
    10:28:27.99: Found: "$A$E$F$U%[email protected]"
    10:28:27.99: Match, pattern = "s1009.prodapt.com", current = "(*domaincheck*)"
    10:28:27.99: old state = not checked.
    10:28:27.99: Using result 1 from domain match cache.
    10:28:27.99: new state = succeeded.
    10:28:27.99: New mailbox: "Store.Administrator".
    10:28:27.99: New host: "s1009.prodapt.com".
    10:28:27.99: New route: "s1009.prodapt.com".
    10:28:27.99: New channel system: "s1009.prodapt.com".
    10:28:27.99: Looking up host "s1009.prodapt.com".
    10:28:27.99: - found on channel l
    10:28:27.99: Routelocal flag set; scanning for % and !
    10:28:27.99: Reparsed mailbox: Store.Administrator
    10:28:27.99: Reparsed host: s1009.prodapt.com
    10:28:27.99: Variant #1 = [email protected]
    10:28:27.99: Variant #2 = *@s1009.prodapt.com
    10:28:27.99: Variant #3 = Store.Administrator
    10:28:27.99: LDAP URL template identified
    10:28:28.00: URL determined to be: ldap:///o%3Ds1009.prodapt.com%2Cdc%3Dprodapt%2Cdc%3Dcom?*?sub?(|([email protected])([email protected])([email protected]))
    10:28:28.00: URL context #1 will be used
    10:28:28.00: Performing URL search on: ldap:///o%3Ds1009.prodapt.com%2Cdc%3Dprodapt%2Cdc%3Dcom?objectclass,inetuserstatus,mailuserstatus,inetMailGroupStatus,uid,preferredLanguage,mailRoutingAddress,mailDeliveryOption,mail,mailAlternateAddress,mailEquivalentAddress,vacationStartDate,vacationEndDate,mailConversionTag,mailMsgMaxBlocks,mailhost,mailQuota,mailMsgQuota,mailProgramDeliveryInfo,mailDeliveryFileURL,mailDeliveryFile,mailAutoReplyMode,mailAutoReplySubject,mailAutoReplyText,mailAutoReplyTextInternal,mailAutoReplyTimeOut,mailSieveRuleSource,mailForwardingAddress,mailDeferProcessing,mgrpMsgRejectAction,mgrpRejectText,mgrpMsgRejectText,mgrpBroadcasterPolicy,mgrpDisallowedBroadcaster,mgrpAllowedBroadcaster,mgrpDisallowedDomain,mgrpAllowedDomain,mgrpMsgMaxSize,mgrpAuthPassword,mgrpModerator,mgrpDeliverTo,memberURL,UniqueMember,mgrpRFC822MailMember,rfc822MailMember,mgrpErrorsTo,mgrpAddHeader,mgrpRemoveHeader,mgrpMsgPrefixText,mgrpMsgSuffixText,mgmanMemberVisibility,expandable?sub?(|([email protected]:28:28.06: Scanning LDAP result.
    10:28:28.06: Attribute: objectclass
    10:28:28.06: Attribute index: 0
    10:28:28.06: Attribute: inetuserstatus
    10:28:28.06: Attribute index: 1
    10:28:28.06: Attribute: mailuserstatus
    10:28:28.06: Attribute index: 2
    10:28:28.06: Attribute: uid
    10:28:28.06: Attribute index: 5
    10:28:28.06: Attribute: mailDeliveryOption
    10:28:28.06: Attribute index: 13
    10:28:28.06: Attribute: mail
    10:28:28.06: Attribute index: 16
    10:28:28.06: Attribute: mailhost
    10:28:28.06: Attribute index: 30
    10:28:28.06: Attribute: mailQuota
    10:28:28.06: Attribute index: 31
    10:28:28.06: Attribute: mailMsgQuota
    10:28:28.06: Attribute index: 32
    10:28:28.06: Scanning complete, begin actions
    10:28:28.06: Possible user object classes: inetLocalMailRecipient+inetmailuser
    10:28:28.06: Possible group object classes: inetLocalMailRecipient+inetmailgroup
    10:28:28.06: Object class: top
    10:28:28.06: Object class didn't match
    10:28:28.06: Object class: person
    10:28:28.06: Object class didn't match
    10:28:28.06: Object class: inetorgperson
    10:28:28.06: Object class didn't match
    10:28:28.06: Object class: iplanet-am-managed-person
    10:28:28.06: Object class didn't match
    10:28:28.06: Object class: organizationalPerson
    10:28:28.06: Object class didn't match
    10:28:28.06: Object class: inetUser
    10:28:28.06: Object class didn't match
    10:28:28.06: Object class: ipUser
    10:28:28.06: Object class didn't match
    10:28:28.06: Object class: userPresenceProfile
    10:28:28.06: Object class didn't match
    10:28:28.06: Object class: inetMailUser
    10:28:28.06: Object class match, reference value 1
    10:28:28.06: Object class: inetLocalMailRecipient
    10:28:28.06: Object class match, reference value 18
    10:28:28.06: User/group index = 1
    10:28:28.06: Domain is active
    10:28:28.06: Mail domain is active
    10:28:28.06: User status = active
    10:28:28.06: User is active
    10:28:28.06: Mail user status = active
    10:28:28.06: User is active
    10:28:28.06: User UID admin found.
    10:28:28.06: Delivery option: mailbox
    10:28:28.06: Delivery options value: 1
    10:28:28.06: Block limit now: 2147483647
    10:28:28.06: Processing mailhost attribute s1009.prodapt.com
    10:28:28.06: Mailhost references local system
    10:28:28.06: Disk quota: -1.
    10:28:28.06: Message quota: -1.
    10:28:28.06: Adding result to cache.
    10:28:28.06: Status for this address = 1
    10:28:28.06: Delivery option template: $M%$\$2I$_+$2S@ims-ms-daemon
    10:28:28.06: Delivery option result: admin@ims-ms-daemon
    10:28:28.06: Inner expand, level = 1, mailbox = admin@ims-ms-daemon
    10:28:28.06: Rewriting: Mbox = "admin", host = "ims-ms-daemon", domain = "$*", literal = "", tag = ""
    10:28:28.06: Rewrite: "$*", position 0, hash table -
    10:28:28.07: Found: "$A$E$F$U%[email protected]"
    10:28:28.07: Match, pattern = "ims-ms-daemon", current = "(*domaincheck*)"
    10:28:28.07: old state = not checked.
    10:28:28.07: Domain check on ims-ms-daemon.
    10:28:28.07: Added domain result 0 to cache for ims-ms-daemon.
    10:28:28.07: new state = fail pending.
    10:28:28.07: Rewrite failed due to prechannel mismatch.
    10:28:28.07: Rewrite: "$*", position 1, hash table -
    10:28:28.07: Failed.
    10:28:28.07: Rewrite: "$*", position 0, rewrite database -
    10:28:28.07: Failed
    10:28:28.07: Rewriting: Mbox = "admin", host = "ims-ms-daemon", domain = "ims-ms-daemon", literal = "", tag = ""
    10:28:28.07: Rewrite: "ims-ms-daemon", position 0, hash table -
    10:28:28.07: Failed.
    10:28:28.07: Rewrite: "ims-ms-daemon", position 0, rewrite database -
    10:28:28.07: Failed
    10:28:28.07: Looking up host "ims-ms-daemon".
    10:28:28.07: - found on channel ims-ms
    admin@ims-ms-daemon
    1 expansion total.
    *** Debug output from submitting an envelope address:
    10:28:28.07: mmc_wadr(0x0012b670,'[email protected]','[email protected]') called.
    10:28:28.07: Copy estimate before address addition is 1
    10:28:28.07: Parsing address [email protected]
    10:28:28.07: Rewriting: Mbox = "Store.Administrator", host = "s1009.prodapt.com", domain = "$*", literal = "", tag = ""
    10:28:28.07: Rewrite: "$*", position 0, hash table -
    10:28:28.07: Found: "$A$E$F$U%[email protected]"
    10:28:28.07: Match, pattern = "s1009.prodapt.com", current = "(*domaincheck*)"
    10:28:28.07: old state = not checked.
    10:28:28.07: Using result 1 from domain match cache.
    10:28:28.07: new state = succeeded.
    10:28:28.07: New mailbox: "Store.Administrator".
    10:28:28.07: New host: "s1009.prodapt.com".
    10:28:28.07: New route: "s1009.prodapt.com".
    10:28:28.07: New channel system: "s1009.prodapt.com".
    10:28:28.07: Looking up host "s1009.prodapt.com".
    10:28:28.07: - found on channel l
    10:28:28.07: Routelocal flag set; scanning for % and !
    10:28:28.07: Address [email protected] requires local processing.
    10:28:28.07: Variant #1 = [email protected]
    10:28:28.07: Variant #2 = *@s1009.prodapt.com
    10:28:28.07: Variant #3 = Store.Administrator
    10:28:28.07: Checking for [email protected] in the system alias file
    10:28:28.07: - not found
    10:28:28.07: Checking for *@s1009.prodapt.com in the system alias file
    10:28:28.07: - not found
    10:28:28.07: Checking for Store.Administrator in the system alias file
    10:28:28.07: - not found
    10:28:28.07: Checking [email protected] with URL template ldap:///$V?*?sub?$R
    10:28:28.07: LDAP URL template identified
    10:28:28.07: URL determined to be: ldap:///o%3Ds1009.prodapt.com%2Cdc%3Dprodapt%2Cdc%3Dcom?*?sub?(|([email protected])([email protected])([email protected]))
    10:28:28.07: URL context #1 will be used
    10:28:28.07: Using cached LDAP result for URL info: ldap:///$V?*?sub?$R|[email protected]|[email protected]
    10:28:28.07: Scanning LDAP result.
    10:28:28.07: Attribute: objectclass
    10:28:28.07: Attribute index: 0
    10:28:28.07: Attribute: inetuserstatus
    10:28:28.07: Attribute index: 1
    10:28:28.07: Attribute: mailuserstatus
    10:28:28.07: Attribute index: 2
    10:28:28.07: Attribute: uid
    10:28:28.07: Attribute index: 5
    10:28:28.07: Attribute: mailDeliveryOption
    10:28:28.07: Attribute index: 13
    10:28:28.07: Attribute: mail
    10:28:28.07: Attribute index: 16
    10:28:28.07: Attribute: mailhost
    10:28:28.07: Attribute index: 30
    10:28:28.07: Attribute: mailQuota
    10:28:28.08: Attribute index: 31
    10:28:28.08: Attribute: mailMsgQuota
    10:28:28.08: Attribute index: 32
    10:28:28.08: Scanning complete, begin actions
    10:28:28.08: Possible user object classes: inetLocalMailRecipient+inetmailuser
    10:28:28.08: Possible group object classes: inetLocalMailRecipient+inetmailgroup
    10:28:28.08: Object class: top
    10:28:28.08: Object class didn't match
    10:28:28.08: Object class: person
    10:28:28.08: Object class didn't match
    10:28:28.08: Object class: inetorgperson
    10:28:28.08: Object class didn't match
    10:28:28.08: Object class: iplanet-am-managed-person
    10:28:28.08: Object class didn't match
    10:28:28.08: Object class: organizationalPerson
    10:28:28.08: Object class didn't match
    10:28:28.08: Object class: inetUser
    10:28:28.08: Object class didn't match
    10:28:28.08: Object class: ipUser
    10:28:28.08: Object class didn't match
    10:28:28.08: Object class: userPresenceProfile
    10:28:28.08: Object class didn't match
    10:28:28.08: Object class: inetMailUser
    10:28:28.08: Object class match, reference value 1
    10:28:28.08: Object class: inetLocalMailRecipient
    10:28:28.08: Object class match, reference value 18
    10:28:28.08: User/group index = 1
    10:28:28.08: Domain is active
    10:28:28.08: Mail domain is active
    10:28:28.08: User status = active
    10:28:28.08: User is active
    10:28:28.08: Mail user status = active
    10:28:28.08: User is active
    10:28:28.08: User UID admin found.
    10:28:28.08: Delivery option: mailbox
    10:28:28.08: Delivery options value: 1
    10:28:28.08: Block limit now: 2147483647
    10:28:28.08: Processing mailhost attribute s1009.prodapt.com
    10:28:28.08: Mailhost references local system
    10:28:28.08: Disk quota information ignored.
    10:28:28.08: Message quota information ignored.
    10:28:28.08: No reprocess flag on user, processing now
    10:28:28.08: Status for this address = 1
    10:28:28.08: - URL match for [email protected]
    10:28:28.08: Delivery option template: $M%$\$2I$_+$2S@ims-ms-daemon
    10:28:28.08: Delivery option result: admin@ims-ms-daemon
    10:28:28.08: - admin@ims-ms-daemon
    10:28:28.08: Parsing address admin@ims-ms-daemon
    10:28:28.08: Rewriting: Mbox = "admin", host = "ims-ms-daemon", domain = "$*", literal = "", tag = ""
    10:28:28.08: Rewrite: "$*", position 0, hash table -
    10:28:28.08: Found: "$A$E$F$U%[email protected]"
    10:28:28.08: Match, pattern = "ims-ms-daemon", current = "(*domaincheck*)"
    10:28:28.08: old state = not checked.
    10:28:28.08: Using result 0 from domain match cache.
    10:28:28.08: new state = fail pending.
    10:28:28.08: Rewrite failed due to prechannel mismatch.
    10:28:28.08: Rewrite: "$*", position 1, hash table -
    10:28:28.08: Failed.
    10:28:28.08: Rewrite: "$*", position 0, rewrite database -
    10:28:28.08: Failed
    10:28:28.08: Rewriting: Mbox = "admin", host = "ims-ms-daemon", domain = "ims-ms-daemon", literal = "", tag = ""
    10:28:28.08: Rewrite: "ims-ms-daemon", position 0, hash table -
    10:28:28.08: Failed.
    10:28:28.08: Rewrite: "ims-ms-daemon", position 0, rewrite database -
    10:28:28.08: Failed
    10:28:28.08: Looking up host "ims-ms-daemon".
    10:28:28.08: - found on channel ims-ms
    10:28:28.08: - orig_send_access mapping check: l|[email protected]|l|[email protected]
    10:28:28.08: - passed.
    10:28:28.08: - send_access mapping check: l|[email protected]|ims-ms|admin@ims-ms-daemon
    10:28:28.08: - passed.
    10:28:28.08: - adding address admin@ims-ms-daemon to channel ims-ms
    10:28:28.08: - adding address [email protected] to headers.
    10:28:28.08: Copy estimate after address addition is 2
    Expanded address:
    [email protected]
    Submitted address list:
    ims-ms
    admin@ims-ms-daemon (orig [email protected], inter [email protected], host ims-ms-daemon) NOTIFY-FAILURES NOTIFY-DELAYS
    Submitted notifications list:
    root@s1009 #

  • Users can't choose parameters

    I have 3 users who can't select parameters when running a report using Crystal Reports 2008. Other users can log onto their machines and run reports and they can select the parameters fine. When the 3 users log onto their machine or another machine, they can't choose parameters. There is no error, nothing happens when they click on anything in the parameter screen.
    This looked to me like a permissions issue, but these 3 users have the exact same permissions as all other users. Also, every setting in Crystal is the exact same for all users. We can't figure out why this is happening. Is there something else that needs to be checked?

    Do all the users use the same CR  login account?  IE.. lets say user 1, that has the issue, logs into there machine.
    Can not select params.  User 1 logs into another machine, can not select params.  A know working user logs
    into user 1's machine, no problems with reports.  That being the case, check the DB, the user 1, may not have
    the rights to the DB, or, they are not mapped correctly.  How do these users run the reports.  Web, CR, or some other method? 
    My guess is they can not access the DB to pull the values for the Parameter.

  • Forward mail to MS Exchange for certain users

    Hello.
    We have a "master" Oracle Messaging Exchange Server and we have recently installed a Microsoft Messaging Server. We need certain users to use MS Exchange. The idea is changing mailHost LDAP attribute for those users (let's take [email protected] as an example), setting the MS Exchange HUB server, let's say hub.domain.com (mailHost: hub.domain.com). Doing so, mails sent to [email protected] are sent to hub.domain.com using lmtp channel. Everything works fine except for an issue: MS Exchange sees the from address like "user@lmtpcs-daemon", so we have to configure MS Exchange to use "lmtpcs-daemon" as secondary domain of domain.com, otherwise it doesn't know what to do with those mails.
    Is there a way to not do that rewrite for certain users? Or maybe can we create a new channel to forward mails to Exchange? Could we define a channel depending on mailHost value or something like that?
    Any thoughts?
    Thank you very much.

    Thank you very much for your inputs.
    It's being quite difficult for me to understand this whole mail routing thing. According to the documentation:
    "The handling of a missing mailhost attribute is different depending on whether the entry is a user or a group. In the case of a user, a mailhost is essential, so if no mailhost attribute is present a new address of the form
    @smarthost:user@domain
    is constructed using the smart host for the domain determined by the LDAP_DOMAIN_ATTR_SMARTHOST MTA option"
    Sounds good, it seems that I just need to delete mailHost attribute for the users who need to use Exchange and set LDAP_DOMAIN_ATTR_SMARTHOST in option.dat. I've tried that but I get a "4.0.0 temporary error returned by alias expansion" when I send a mail to the test user.
    I've deleted the LDAP_DOMAIN_ATTR_SMARTHOST line and I've set mailRoutingSmartHost LDAP attribute for the user but I get the same result.
    I'm not even sure about the mailRoutingSmartHost format. This is what I have:
    mailRoutingSmartHost: correoweb.saludcastillayleon.es
    root@MTA1 # imsimta test -rewrite -debug [email protected]
    Initializing mm_.
    Initializing mm_ submission.
    Checking identifiers.
    *** Debug output from initializing MM for submission:
    09:49:06.60: Debug output enabled, system MTA1.domain.com, process 41f0.1, message enqueue routines version V6.3 compiled Mar 14 2008 17:07:19
    09:49:06.60: mmc_winit('l','[email protected]','[email protected]') called.
    09:49:06.60: Address reversal invoked on [email protected], force reverse URL 1, capture 1
    09:49:06.60: Rewriting: Mbox = "postmaster", host = "mta1.domain.com", domain = "$*", literal = "", tag = ""
    09:49:06.60: Rewrite: "$*", position 0, hash table -
    09:49:06.60: Found: "$A$E$F$U%[email protected]"
    09:49:06.60: Rewrite failed, not forward.
    09:49:06.60: Rewrite: "$*", position 1, hash table -
    09:49:06.60: Failed.
    09:49:06.60: Rewrite: "$*", position 0, rewrite database -
    09:49:06.60: Failed
    09:49:06.60: Rewriting: Mbox = "postmaster", host = "mta1", domain = "mta1.domain.com", literal = "", tag = ""
    09:49:06.60: Rewrite: "mta1.domain.com", position 0, hash table -
    09:49:06.60: Found: "$U%[email protected]"
    09:49:06.60: New mailbox: "postmaster".
    09:49:06.60: New host: "mta1.domain.com".
    09:49:06.60: New route: "mta1.domain.com".
    09:49:06.60: New channel system: "mta1.domain.com".
    09:49:06.60: Looking up host "mta1.domain.com".
    09:49:06.60: - found on channel l
    09:49:06.60: Routelocal flag set; scanning for % and !
    09:49:06.60: Checking reverse URL cache for: [email protected]
    09:49:06.60: Applying reverse URL pattern ldap:///$V?$N?sub?$R to: [email protected]
    09:49:06.68: URL generation failed, status = 0
    09:49:06.68: Mapped return address: [email protected]
    09:49:06.68: from_access mapping check: ||MAIL|l|[email protected]|
    09:49:06.68: Queue area size 145940970, temp area size 21837182
    09:49:06.68: 36485242 blocks of effective free queue space available; setting disk limit accordingly.
    09:49:06.68: 10918591 blocks of free temporary space available; setting disk limit accordingly.
    09:49:06.68: - passed.
    09:49:06.68: Rewriting: Mbox = "postmaster", host = "mta1.domain.com", domain = "$*", literal = "", tag = ""
    09:49:06.68: Rewrite: "$*", position 0, hash table -
    09:49:06.68: Found: "$A$E$F$U%[email protected]"
    09:49:06.68: Rewrite failed, not forward.
    09:49:06.68: Rewrite: "$*", position 1, hash table -
    09:49:06.68: Failed.
    09:49:06.68: Rewrite: "$*", position 0, rewrite database -
    09:49:06.68: Failed
    09:49:06.68: Rewriting: Mbox = "postmaster", host = "mta1", domain = "mta1.domain.com", literal = "", tag = ""
    09:49:06.68: Rewrite: "mta1.domain.com", position 0, hash table -
    09:49:06.68: Found: "$U%[email protected]"
    09:49:06.68: New mailbox: "postmaster".
    09:49:06.68: New host: "mta1.domain.com".
    09:49:06.68: New route: "mta1.domain.com".
    09:49:06.68: New channel system: "mta1.domain.com".
    09:49:06.68: Looking up host "mta1.domain.com".
    09:49:06.68: - found on channel l
    09:49:06.68: Routelocal flag set; scanning for % and !
    *** Debug output from rewriting a forward header address:
    09:49:06.68: Rewriting: Mbox = "user", host = "domain.com", domain = "$*", literal = "", tag = ""
    09:49:06.68: Rewrite: "$*", position 0, hash table -
    09:49:06.68: Found: "$A$E$F$U%[email protected]"
    09:49:06.68: Rewrite failed, not envelope.
    09:49:06.68: Rewrite: "$*", position 1, hash table -
    09:49:06.68: Failed.
    09:49:06.68: Rewrite: "$*", position 0, rewrite database -
    09:49:06.68: Failed
    09:49:06.68: Rewriting: Mbox = "user", host = "saludcastillayleon", domain = "domain.com", literal = "", tag = ""
    09:49:06.68: Rewrite: "domain.com", position 0, hash table -
    09:49:06.68: Found: "$U%[email protected]"
    09:49:06.68: New mailbox: "user".
    09:49:06.68: New host: "domain.com".
    09:49:06.68: New route: "mta1.domain.com".
    09:49:06.68: New channel system: "mta1.domain.com".
    09:49:06.68: Looking up host "mta1.domain.com".
    09:49:06.68: - found on channel l
    09:49:06.68: Routelocal flag set; scanning for % and !
    09:49:06.68: Rewriting: Mbox = "user", host = "domain.com", domain = "$*", literal = "", tag = ""
    09:49:06.68: Rewrite: "$*", position 0, hash table -
    09:49:06.68: Found: "$A$E$F$U%[email protected]"
    09:49:06.68: Rewrite failed, not envelope.
    09:49:06.68: Rewrite: "$*", position 1, hash table -
    09:49:06.68: Failed.
    09:49:06.68: Rewrite: "$*", position 0, rewrite database -
    09:49:06.68: Failed
    09:49:06.68: Rewriting: Mbox = "user", host = "domain", domain = "domain.com", literal = "", tag = ""
    09:49:06.68: Rewrite: "domain.com", position 0, hash table -
    09:49:06.68: Found: "$U%[email protected]"
    09:49:06.68: New mailbox: "user".
    09:49:06.68: New host: "domain.com".
    09:49:06.68: New route: "mta1.domain.com".
    09:49:06.68: New channel system: "mta1.domain.com".
    09:49:06.68: Looking up host "mta1.domain.com".
    09:49:06.68: - found on channel l
    09:49:06.68: Routelocal flag set; scanning for % and !
    09:49:06.68: Rewrite rules result: [email protected]
    09:49:06.68: Checking reverse URL cache for: [email protected]
    09:49:06.68: Applying reverse URL pattern ldap:///$V?$N?sub?$R to: [email protected]
    09:49:06.69: Resulting URL: ldap:///o%3Ddomain.com?preferredlanguage,mailmsgmaxblocks,mail,mailalternateaddress,mailequivalentaddress?sub?(|([email protected])([email protected])([email protected]))
    09:49:06.69: mmc_open_url called to open ldap:///o%3Ddomain.com?preferredlanguage,mailmsgmaxblocks,mail,mailalternateaddress,mailequivalentaddress?sub?(|([email protected])([email protected])([email protected])), flags = 384
    09:49:06.69: URL with quotes stripped: ldap:///o%3Ddomain.com?preferredlanguage,mailmsgmaxblocks,mail,mailalternateaddress,mailequivalentaddress?sub?(|([email protected])([email protected])([email protected]))
    09:49:06.69: LDAP URL identified
    09:49:06.69: URL context #1 will be used
    09:49:06.69: Performing URL search on: ldap:///o%3Ddomain.com?preferredlanguage,mailmsgmaxblocks,mail,mailalternateaddress,mailequivalentaddress?sub?(|([email protected])([email protected])([email protected]))
    09:49:06.70: mmc_read_url result: [uid=user, ou=People, o=domain.com]
    09:49:06.70: URL resolution returned: [uid=user, ou=People, o=domain.com]
    09:49:06.70: mmc_read_url result: [preferredlanguage] en
    09:49:06.70: URL resolution returned: [preferredlanguage] en
    09:49:06.70: Attribute index: 0
    09:49:06.70: LDAP URL produced preferred language en
    09:49:06.70: mmc_read_url result: [mail] [email protected]
    09:49:06.70: URL resolution returned: [mail] [email protected]
    09:49:06.70: Attribute index: 0
    09:49:06.70: LDAP URL produced address [email protected]
    09:49:06.70: mmc_read_url result: [mailalternateaddress] [email protected]
    09:49:06.70: URL resolution returned: [mailalternateaddress] [email protected]
    09:49:06.70: Attribute index: 0
    09:49:06.70: Alternate address [email protected]
    09:49:06.70: No more results to return
    *** Debug output from rewriting a forward envelope address:
    09:49:06.70: Rewriting: Mbox = "user", host = "domain.com", domain = "$*", literal = "", tag = ""
    09:49:06.70: Rewrite: "$*", position 0, hash table -
    09:49:06.70: Found: "$A$E$F$U%[email protected]"
    09:49:06.70: Match, pattern = "domain.com", current = "(*domaincheck*)"
    09:49:06.70: old state = not checked.
    09:49:06.70: Domain check on domain.com.
    09:49:06.70: Added domain result 1 to cache for domain.com.
    09:49:06.70: new state = succeeded.
    09:49:06.70: New mailbox: "user".
    09:49:06.70: New host: "domain.com".
    09:49:06.70: New route: "mta1.domain.com".
    09:49:06.70: New channel system: "mta1.domain.com".
    09:49:06.70: Looking up host "mta1.domain.com".
    09:49:06.70: - found on channel l
    09:49:06.70: Routelocal flag set; scanning for % and !
    address channel = l
    forward channel = l
    channel description =
    channel caption =
    channel user filter =
    dest channel filter =
    source channel filter =
    channel flags #0 = BIDIRECTIONAL MULTIPLE IMMNONURGENT NOSERVICEALL
    channel flags #1 = NOSMTP DEFAULT
    channel flags #2 = COPYSENDPOST COPYWARNPOST POSTHEADONLY HEADERINC NOEXPROUTE
    channel flags #3 = LOGGING NORESTRICTED RETAINSECURITYMULTIPARTS
    channel flags #4 = EIGHTBIT HEADERKEEPORDER NOHEADERREAD RULES
    channel flags #5 = TRUNCATESMTPLONGLINES
    channel flags #6 = LOCALUSER REPORTNOTARY
    channel flags #7 = NOSWITCHCHANNEL NOREMOTEHOST DATEFOUR DAYOFWEEK
    channel flags #8 = NODEFRAGMENT EXQUOTA REVERSE NOCONVERT_OCTET_STREAM
    channel flags #9 = NOTHURMAN INTERPRETENCODING USEINTERMEDIATE RECEIVEDFROM VALIDATELOCALSYSTEM NOTURN
    defaulthost = domain.com domain.com
    linelength = 1023
    channel env addr type = SOURCEROUTE
    channel hdr addr type = SOURCEROUTE
    channel official host = mta1.domain.com
    channel after params =
    channel user name =
    urgentnotices = 1 2 4 7
    normalnotices = 1 2 4 7
    nonurgentnotices = 1 2 4 7
    channel rightslist ids =
    local behavior flags = %x7
    expandchannel =
    notificationchannel =
    dispositionchannel =
    saslswitchchannel =
    tlsswitchchannel =
    backward channel = l
    unique identifier = [email protected]
    header forward address = [email protected] (route (mta1.domain.com,mta1.domain.com)) (host domain.com)
    header reverse address = [email protected]
    envelope forw address = [email protected] (route (mta1.domain.com,mta1.domain.com)) (host domain.com)
    envelope rev address = [email protected] (route (mta1.domain.com,mta1.domain.com)) (host domain.com)
    name =
    mbox = user
    Extracted address action list:
    [email protected]
    Extracted 733 address action list:
    [email protected]
    Address list expansion:
    *** Debug output from alias expansion:
    09:49:06.70: Inner expand, level = 0, mailbox = [email protected]
    09:49:06.70: Rewriting: Mbox = "user", host = "domain.com", domain = "$*", literal = "", tag = ""
    09:49:06.70: Rewrite: "$*", position 0, hash table -
    09:49:06.70: Found: "$A$E$F$U%[email protected]"
    09:49:06.70: Match, pattern = "domain.com", current = "(*domaincheck*)"
    09:49:06.70: old state = not checked.
    09:49:06.70: Using result 1 from domain match cache.
    09:49:06.70: new state = succeeded.
    09:49:06.70: New mailbox: "user".
    09:49:06.70: New host: "domain.com".
    09:49:06.70: New route: "mta1.domain.com".
    09:49:06.70: New channel system: "mta1.domain.com".
    09:49:06.70: Looking up host "mta1.domain.com".
    09:49:06.70: - found on channel l
    09:49:06.70: Routelocal flag set; scanning for % and !
    09:49:06.70: Reparsed mailbox: user
    09:49:06.70: Reparsed host: domain.com
    09:49:06.70: Variant #1 = [email protected]
    09:49:06.70: Variant #2 = *@domain.com
    09:49:06.70: Alias magic value 8764
    09:49:06.70: LDAP URL template identified
    09:49:06.70: URL determined to be: ldap:///o%3Ddomain.com?*?sub?(|([email protected])([email protected])([email protected]))
    09:49:06.70: URL context #1 will be used
    09:49:06.70: Performing URL search on: ldap:///o%3Ddomain.com?objectclass,inetuserstatus,mailuserstatus,inetMailGroupStatus,uid,preferredLanguage,mailRoutingAddress,mailMsgMaxBlocks,mail,mailAlternateAddress,mailEquivalentAddress,mailDeliveryOption,vacationStartDate,vacationEndDate,mailConversionTag,mailhost,mailQuota,mailMsgQuota,mailProgramDeliveryInfo,mailDeliveryFileURL,mailDeliveryFile,mailAutoReplyMode,mailAutoReplySubject,mailAutoReplyText,mailAutoReplyTextInternal,mailAutoReplyTimeOut,mailSieveRuleSource,mailForwardingAddress,mailDeferProcessing,mgrpMsgRejectAction,mgrpRejectText,mgrpMsgRejectText,mgrpBroadcasterPolicy,mgrpDisallowedBroadcaster,mgrpAllowedBroadcaster,mgrpDisallowedDomain,mgrpAllowedDomain,mgrpMsgMaxSize,mgrpAuthPassword,mgrpModerator,mgrpDeliverTo,memberURL,UniqueMember,mgrpRFC822MailMember,rfc822MailMember,mgrpErrorsTo,mgrpAddHeader,mgrpRemoveHeader,mgrpMsgPrefixText,mgrpMsgSuffixText,mgmanMemberVisibility,expandable?sub?(|([email protected])(mailAlternateAddress=user@09:49:06.72: Scanning LDAP result.
    09:49:06.72: Attribute: objectclass
    09:49:06.72: Attribute index: 0
    09:49:06.72: Attribute: inetuserstatus
    09:49:06.72: Attribute index: 1
    09:49:06.72: Attribute: mailuserstatus
    09:49:06.72: Attribute index: 2
    09:49:06.72: Attribute: uid
    09:49:06.72: Attribute index: 5
    09:49:06.72: Attribute: preferredLanguage
    09:49:06.72: Attribute index: 19
    09:49:06.72: Attribute: mail
    09:49:06.72: Attribute index: 31
    09:49:06.72: Attribute: mailAlternateAddress
    09:49:06.72: Attribute index: 32
    09:49:06.72: Attribute: mailDeliveryOption
    09:49:06.72: Attribute index: 34
    09:49:06.72: Attribute: mailQuota
    09:49:06.72: Attribute index: 51
    09:49:06.72: Attribute: mailAutoReplyMode
    09:49:06.72: Attribute index: 55
    09:49:06.72: Attribute: mailForwardingAddress
    09:49:06.72: Attribute index: 64
    09:49:06.72: Attribute: mailDeferProcessing
    09:49:06.72: Attribute index: 65
    09:49:06.72: Scanning complete, begin actions
    09:49:06.72: Possible user object classes: inetLocalMailRecipient+inetmailuser
    09:49:06.72: Possible group object classes: inetLocalMailRecipient+inetmailgroup
    09:49:06.72: Object class: top
    09:49:06.72: Object class didn't match
    09:49:06.72: Object class: person
    09:49:06.72: Object class didn't match
    09:49:06.72: Object class: inetuser
    09:49:06.72: Object class didn't match
    09:49:06.72: Object class: organizationalperson
    09:49:06.72: Object class didn't match
    09:49:06.72: Object class: inetorgperson
    09:49:06.72: Object class didn't match
    09:49:06.72: Object class: ipuser
    09:49:06.72: Object class didn't match
    09:49:06.72: Object class: inetmailuser
    09:49:06.72: Object class match, reference value 1
    09:49:06.72: Object class: inetlocalmailrecipient
    09:49:06.72: Object class match, reference value 18
    09:49:06.72: Object class: userpresenceprofile
    09:49:06.72: Object class didn't match
    09:49:06.72: Object class: inetsubscriber
    09:49:06.72: Object class didn't match
    09:49:06.72: Object class: icscalendaruser
    09:49:06.72: Object class didn't match
    09:49:06.72: Object class: iplanet-am-managed-person
    09:49:06.72: Object class didn't match
    09:49:06.72: Object class: iplanet-am-user-service
    09:49:06.72: Object class didn't match
    09:49:06.72: Object class: iplanetpreferences
    09:49:06.72: Object class didn't match
    09:49:06.72: Object class: inetadmin
    09:49:06.72: Object class didn't match
    09:49:06.72: Object class: sunamauthaccountlockout
    09:49:06.72: Object class didn't match
    09:49:06.72: Object class: sunUCPreferences
    09:49:06.72: Object class didn't match
    09:49:06.72: Object class: mailDomain
    09:49:06.72: Object class didn't match
    09:49:06.72: User/group index = 1
    09:49:06.72: Domain is active
    09:49:06.72: Mail domain is active
    09:49:06.72: User status = active
    09:49:06.72: User is active
    09:49:06.72: Mail user status = active
    09:49:06.72: User is active
    09:49:06.72: User UID user found.
    09:49:06.73: Delivery option: mailbox
    09:49:06.73: Delivery options value: 1
    09:49:06.73: Processing mailhost attribute
    09:49:06.73: Mailhost not set for user
    09:49:06.73: Adding result to cache.
    09:49:06.73: Status for this address = -10
    09:49:06.73: LDAP URL template identified
    09:49:06.73: URL determined to be: ldap:///o%3Ddomain.com?*?sub?([email protected])
    09:49:06.73: URL context #1 will be used
    09:49:06.73: Performing URL search on: ldap:///o%3Ddomain.com?objectclass,inetuserstatus,mailuserstatus,inetMailGroupStatus,uid,preferredLanguage,mailRoutingAddress,mailMsgMaxBlocks,mail,mailAlternateAddress,mailEquivalentAddress,mailDeliveryOption,vacationStartDate,vacationEndDate,mailConversionTag,mailhost,mailQuota,mailMsgQuota,mailProgramDeliveryInfo,mailDeliveryFileURL,mailDeliveryFile,mailAutoReplyMode,mailAutoReplySubject,mailAutoReplyText,mailAutoReplyTextInternal,mailAutoReplyTimeOut,mailSieveRuleSource,mailForwardingAddress,mailDeferProcessing,mgrpMsgRejectAction,mgrpRejectText,mgrpMsgRejectText,mgrpBroadcasterPolicy,mgrpDisallowedBroadcaster,mgrpAllowedBroadcaster,mgrpDisallowedDomain,mgrpAllowedDomain,mgrpMsgMaxSize,mgrpAuthPassword,mgrpModerator,mgrpDeliverTo,memberURL,UniqueMember,mgrpRFC822MailMember,rfc822MailMember,mgrpErrorsTo,mgrpAddHeader,mgrpRemoveHeader,mgrpMsgPrefixText,mgrpMsgSuffixText,mgmanMemberVisibility,expandable?sub?([email protected])
    09:49:06.75: Search succeeded but 0 entries returned
    09:49:06.75: No matching entries were found that were valid
    09:49:06.75: Status for this address = 0
    0 expansion total.
    *** Debug output from submitting an envelope address:
    09:49:06.75: mmc_wadr(0x08103050,'[email protected]','[email protected]') called.
    09:49:06.75: Copy estimate before address addition is 1
    09:49:06.75: Parsing address [email protected]
    09:49:06.75: Rewriting: Mbox = "user", host = "domain.com", domain = "$*", literal = "", tag = ""
    09:49:06.75: Rewrite: "$*", position 0, hash table -
    09:49:06.75: Found: "$A$E$F$U%[email protected]"
    09:49:06.75: Match, pattern = "domain.com", current = "(*domaincheck*)"
    09:49:06.75: old state = not checked.
    09:49:06.75: Using result 1 from domain match cache.
    09:49:06.75: new state = succeeded.
    09:49:06.75: New mailbox: "user".
    09:49:06.75: New host: "domain.com".
    09:49:06.75: New route: "mta1.domain.com".
    09:49:06.75: New channel system: "mta1.domain.com".
    09:49:06.75: Looking up host "mta1.domain.com".
    09:49:06.75: - found on channel l
    09:49:06.75: Routelocal flag set; scanning for % and !
    09:49:06.75: Address [email protected] requires local processing.
    09:49:06.75: Variant #1 = [email protected]
    09:49:06.75: Variant #2 = *@domain.com
    09:49:06.75: Alias magic value 8764
    09:49:06.75: Checking for [email protected] in the system alias file
    09:49:06.75: - not found
    09:49:06.75: Checking for *@domain.com in the system alias file
    09:49:06.75: - not found
    09:49:06.75: Checking [email protected] with URL template ldap:///$V?*?sub?$R
    09:49:06.75: LDAP URL template identified
    09:49:06.75: URL determined to be: ldap:///o%3Ddomain.com?*?sub?(|([email protected])([email protected])([email protected]))
    09:49:06.75: URL context #1 will be used
    09:49:06.75: Using cached LDAP result for URL info: ldap:///$V?*?sub?$R|[email protected]|[email protected]
    09:49:06.75: Scanning LDAP result.
    09:49:06.75: Attribute: objectclass
    09:49:06.75: Attribute index: 0
    09:49:06.75: Attribute: inetuserstatus
    09:49:06.75: Attribute index: 1
    09:49:06.75: Attribute: mailuserstatus
    09:49:06.75: Attribute index: 2
    09:49:06.75: Attribute: uid
    09:49:06.75: Attribute index: 5
    09:49:06.75: Attribute: preferredLanguage
    09:49:06.75: Attribute index: 19
    09:49:06.75: Attribute: mail
    09:49:06.75: Attribute index: 31
    09:49:06.75: Attribute: mailAlternateAddress
    09:49:06.75: Attribute index: 32
    09:49:06.75: Attribute: mailDeliveryOption
    09:49:06.75: Attribute index: 34
    09:49:06.75: Attribute: mailQuota
    09:49:06.75: Attribute index: 51
    09:49:06.75: Attribute: mailAutoReplyMode
    09:49:06.75: Attribute index: 55
    09:49:06.75: Attribute: mailForwardingAddress
    09:49:06.75: Attribute index: 64
    09:49:06.75: Attribute: mailDeferProcessing
    09:49:06.75: Attribute index: 65
    09:49:06.75: Scanning complete, begin actions
    09:49:06.75: Possible user object classes: inetLocalMailRecipient+inetmailuser
    09:49:06.75: Possible group object classes: inetLocalMailRecipient+inetmailgroup
    09:49:06.75: Object class: top
    09:49:06.75: Object class didn't match
    09:49:06.75: Object class: person
    09:49:06.75: Object class didn't match
    09:49:06.75: Object class: inetuser
    09:49:06.75: Object class didn't match
    09:49:06.75: Object class: organizationalperson
    09:49:06.75: Object class didn't match
    09:49:06.75: Object class: inetorgperson
    09:49:06.75: Object class didn't match
    09:49:06.75: Object class: ipuser
    09:49:06.75: Object class didn't match
    09:49:06.75: Object class: inetmailuser
    09:49:06.75: Object class match, reference value 1
    09:49:06.75: Object class: inetlocalmailrecipient
    09:49:06.75: Object class match, reference value 18
    09:49:06.75: Object class: userpresenceprofile
    09:49:06.75: Object class didn't match
    09:49:06.75: Object class: inetsubscriber
    09:49:06.75: Object class didn't match
    09:49:06.75: Object class: icscalendaruser
    09:49:06.75: Object class didn't match
    09:49:06.75: Object class: iplanet-am-managed-person
    09:49:06.75: Object class didn't match
    09:49:06.75: Object class: iplanet-am-user-service
    09:49:06.75: Object class didn't match
    09:49:06.75: Object class: iplanetpreferences
    09:49:06.75: Object class didn't match
    09:49:06.75: Object class: inetadmin
    09:49:06.75: Object class didn't match
    09:49:06.75: Object class: sunamauthaccountlockout
    09:49:06.75: Object class didn't match
    09:49:06.75: Object class: sunUCPreferences
    09:49:06.75: Object class didn't match
    09:49:06.75: Object class: mailDomain
    09:49:06.75: Object class didn't match
    09:49:06.75: User/group index = 1
    09:49:06.75: Domain is active
    09:49:06.75: Mail domain is active
    09:49:06.75: User status = active
    09:49:06.75: User is active
    09:49:06.75: Mail user status = active
    09:49:06.75: User is active
    09:49:06.75: User UID user found.
    09:49:06.75: Delivery option: mailbox
    09:49:06.75: Delivery options value: 1
    09:49:06.75: Processing mailhost attribute
    09:49:06.75: Mailhost not set for user
    09:49:06.75: Status for this address = -10
    09:49:06.75: Temporary alias URL failure; reprocess later
    09:49:06.75: - adding address [email protected] to channel reprocess
    09:49:06.75: Good address count 1 defer count 1
    09:49:06.75: All addresses deferred - treat as general temporary error
    09:49:06.75: Copy estimate after address addition is 2
    09:49:06.75: mmc_waend(0x08103050) called.
    09:49:06.75: Copy estimate is 2
    09:49:06.75: Queue area size 145940970, temp area size 21837154
    09:49:06.75: 36485242 blocks of effective free queue space available; setting disk limit accordingly.
    09:49:06.75: 10918577 blocks of free temporary space available; setting disk limit accordingly.
    Submitted address list:
    Address list error -- 4.0.0 temporary error returned by alias expansion: [email protected]
    Submitted notifications list:

  • List permissions a user has on shared mailboxes

    <#
    .SYNOPSIS
    Retrieves all permissions a mailbox has access to in the Organizational Unit 'domain/Accounts/Shared'.
    .DESCRIPTION
    This script will query all Mailbox permissions and Active Directory permissions a mailbox has on another mailbox.
    Active Directory such as 'Send-As'.
    .PARAMETER User
    The Display Name, Email address, GUID, Alias.
    .EXAMPLE
    .\ListAllMailboxesAUserHasAccessTo -User 'JSmith'
    This example will retrieve all mailboxes that Jsmith has full access to.
    #>
    param(
         [String]$User
    Get-Mailbox -resultsize Unlimited -RecipientTypeDetails sharedmailbox  |Get-MailboxPermission |
    Where-Object {($_.AccessRights -eq "FullAccess") -and ($_.User -like $User) -and ($_.IsInherited -eq $false) -and ($_.User -notlike 'NT Authority\Self')} |
    Format-Table Identity -Verbose
    This works only if I put user as "domain\userid. How can I just put the DN,Alias,UPN in the $user parameter?
    Thanks,
    Alexis
          

    Hello Alexis,
    Conver it to domain\userid on the fly if you put DN, Alias of upn...
    $ConvertedUser = (get-mailbox $user).userprincipalname.split("@")[1].split(".")[0] + "\" + (get-mailbox $user).userprincipalname.split("@")[0]
    Get-Mailbox -resultsize Unlimited -RecipientTypeDetails sharedmailbox  |Get-MailboxPermission | 
    Where-Object {($_.AccessRights -eq "FullAccess") -and ($_.User -like $ConvertedUser) -and ($_.IsInherited
    -eq $false) -and ($_.User -notlike 'NT Authority\Self')} |
    Format-Table Identity -Verbose
    Blog |
    Get Your Exchange Powershell Tip of the Day from here

  • C++ - Unable to load class for user type- ClassNotFoundException

    Hi ,
    I'm getting ClassNotFoundException when i try to start the coherence server. I've no clue to solve it.
    Any help would be appreciated.
    i'm using POF serializer and registering the class using the macro
    COH_REGISTER_POF_SERIALIZER(1234,TypedClass<CVOG_AllocationInquiry>::create(), PortableObjectSerializer::create(1234));
    i've set the CLASSPATH to my source folder.
    i read some posts saying we need java wrapper for this? is that true, do we need java wrapper for all the c++classes that we register.
    Here are the details:
    my C++ class :
    class CVOG_AllocationInquiry : public cloneable_spec<CVOG_AllocationInquiry, extends<Object>, implements< PortableObject> >
         friend class factory<CVOG_AllocationInquiry>;
    protected:
         CVOG_AllocationInquiry()
         : m_modl_yr_nbr(self()), m_sellng_src_cd(self()), m_alloc_grp_cd(self()),
         m_namplt_cd(self()), m_veh_prod_cd(self()), m_alloc_grp_desc(self())
         CVOG_AllocationInquiry(String::View modl_yr_nbr, String::View sellng_src_cd, String::View alloc_grp_cd, String::View namplt_cd, String::View veh_prod_cd, String::View alloc_grp_desc)
                             :m_modl_yr_nbr(self(),modl_yr_nbr),m_sellng_src_cd(self(),sellng_src_cd),m_alloc_grp_cd(self(),alloc_grp_cd),m_namplt_cd(self(),namplt_cd),
                             m_veh_prod_cd(self(),veh_prod_cd),m_alloc_grp_desc(self(),alloc_grp_desc)
    // initialize(m_modl_yr_nbr, modl_yr_nbr);
         CVOG_AllocationInquiry(const CVOG_AllocationInquiry& alloc)
                        :super(alloc),m_modl_yr_nbr(self(),alloc.m_modl_yr_nbr),m_sellng_src_cd(self(),alloc.m_sellng_src_cd),
                        m_alloc_grp_cd(self(),alloc.m_alloc_grp_cd),m_namplt_cd(self(),alloc.m_namplt_cd),
                        m_veh_prod_cd(self(),alloc.m_veh_prod_cd),m_alloc_grp_desc(self(),alloc.m_alloc_grp_desc)
    public:
         virtual String::View getGrpCd() const {return m_alloc_grp_cd; }
         virtual String::View getGrpDesc() const { return m_alloc_grp_desc;}
         virtual String::View getModlYr() const { return m_modl_yr_nbr;}
         virtual String::View getNmPltCd() const {return m_namplt_cd; }
         virtual String::View getSelSrcCd() const {return m_sellng_src_cd; }
         virtual String::View getVehProdCd() const { return m_veh_prod_cd ;}
    virtual void writeExternal(PofWriter::Handle hOut) const
         hOut->writeString(0, getModlYr());
         hOut->writeString (1, getSelSrcCd());
         hOut->writeString (2, getGrpCd());
         hOut->writeString (3, getNmPltCd());
         hOut->writeString (4, getVehProdCd());
         hOut->writeString (5, getGrpDesc());
    virtual void readExternal(PofReader::Handle hIn)
         // add for other members also here
    initialize(m_modl_yr_nbr, hIn->readString(0));
    initialize(m_sellng_src_cd, hIn->readString(1));
    initialize(m_alloc_grp_cd, hIn->readString(2));
    initialize(m_namplt_cd, hIn->readString(3));
    initialize(m_veh_prod_cd, hIn->readString(4));
    initialize(m_alloc_grp_desc, hIn->readString(5));
    public: // Object interface
    virtual bool equals(Object::View that) const
    if (instanceof<CVOG_AllocationInquiry::View>(that))
         CVOG_AllocationInquiry::View vThat = cast<CVOG_AllocationInquiry::View>(that);
    return Object::equals(getGrpCd() ,vThat->getGrpCd()) &&
                   Object::equals(getGrpDesc() ,vThat->getGrpDesc()) &&
                   Object::equals(getModlYr() ,vThat->getModlYr()) &&
                   Object::equals(getNmPltCd() ,vThat->getNmPltCd()) &&
                   Object::equals(getSelSrcCd() ,vThat->getSelSrcCd()) &&
                   Object::equals(getVehProdCd() ,vThat->getVehProdCd());
    return false;
    virtual size32_t hashCode() const
         size32_t m_nNum;
    return (size32_t) m_nNum;
    virtual void toStream(std::ostream& out) const
    out << getGrpCd() << ", " << getGrpDesc() << " " << getModlYr();
    private:
    FinalView<String> m_modl_yr_nbr;
    FinalView<String> m_sellng_src_cd;
    FinalView<String> m_alloc_grp_cd;
    FinalView<String> m_namplt_cd;
    FinalView<String> m_veh_prod_cd;
    FinalView<String> m_alloc_grp_desc;
    cache config file -
    <?xml version="1.0"?>
    <!DOCTYPE cache-config SYSTEM "cache-config.dtd">
    <cache-config>
    <caching-scheme-mapping>
    <cache-mapping>
    <cache-name>AllocInq-extend</cache-name>
    <scheme-name>extend-dist</scheme-name>
    </cache-mapping>
    <cache-mapping>
    <cache-name>dist-extend-near</cache-name>
    <scheme-name>extend-near</scheme-name>
    </cache-mapping>
    </caching-scheme-mapping>
    <caching-schemes>
    <near-scheme>
    <scheme-name>extend-near</scheme-name>
    <front-scheme>
    <local-scheme>
    <high-units>1000</high-units>
    </local-scheme>
    </front-scheme>
    <back-scheme>
    <remote-cache-scheme>
    <scheme-ref>extend-dist</scheme-ref>
    </remote-cache-scheme>
    </back-scheme>
    <invalidation-strategy>all</invalidation-strategy>
    </near-scheme>
    <remote-cache-scheme>
    <scheme-name>extend-dist</scheme-name>
    <service-name>ExtendTcpProxyService</service-name>
    <initiator-config>
    <tcp-initiator>
    <remote-addresses>
    <socket-address>
    <address>localhost</address>
    <port>9099</port>
    </socket-address>
    </remote-addresses>
    <connect-timeout>10s</connect-timeout>
    </tcp-initiator>
    <outgoing-message-handler>
    <request-timeout>5s</request-timeout>
    </outgoing-message-handler>
    </initiator-config>
    </remote-cache-scheme>
    <remote-invocation-scheme>
    <scheme-name>extend-invocation</scheme-name>
    <service-name>ExtendTcpInvocationService</service-name>
    <initiator-config>
    <tcp-initiator>
    <remote-addresses>
    <socket-address>
    <address>localhost</address>
    <port>9099</port>
    </socket-address>
    </remote-addresses>
    <connect-timeout>10s</connect-timeout>
    </tcp-initiator>
    <outgoing-message-handler>
    <request-timeout>5s</request-timeout>
    </outgoing-message-handler>
    </initiator-config>
    </remote-invocation-scheme>
    </caching-schemes>
    </cache-config>
    server config file :
    <?xml version="1.0"?>
    <!DOCTYPE cache-config SYSTEM "cache-config.dtd">
    <cache-config>
    <caching-scheme-mapping>
    <cache-mapping>
    <cache-name>AllocInq-*</cache-name>
    <scheme-name>dist-default</scheme-name>
    </cache-mapping>
    </caching-scheme-mapping>
    <caching-schemes>
    <distributed-scheme>
    <scheme-name>dist-default</scheme-name>
    <lease-granularity>member</lease-granularity>
    <thread-count>8</thread-count>
    <backing-map-scheme>
    <local-scheme/>
    </backing-map-scheme>
    <autostart>true</autostart>
    </distributed-scheme>
    <proxy-scheme>
    <service-name>ExtendTcpProxyService</service-name>
    <thread-count>5</thread-count>
    <acceptor-config>
    <serializer>
    <class-name>com.tangosol.io.pof.ConfigurablePofContext</class-name>
    <init-params>
    <init-param>
    <param-type>String</param-type>
    <param-value>/home/hema/workspace/CoherenceClient/config/pof.xml</param-value>
    </init-param>
    </init-params>
    </serializer>
    <tcp-acceptor>
    <local-address>
    <address>localhost</address>
    <port>9099</port>
    </local-address>
    </tcp-acceptor>
    </acceptor-config>
    <proxy-config>
    <cache-service-proxy>
    <lock-enabled>true</lock-enabled>
    </cache-service-proxy>
    </proxy-config>
    <autostart>true</autostart>
    </proxy-scheme>
    </caching-schemes>
    </cache-config>
    pof.xml
    <?xml version="1.0"?>
    <!DOCTYPE pof-config SYSTEM "pof-config.dtd">
    <pof-config>
    <user-type-list>
    <!-- include all "standard" Coherence POF user types -->
    <include>coherence-pof-config.xml</include>
    <!-- include all application POF user types -->
    <user-type>
    <type-id>1234</type-id>
    <class-name>CVOG_AllocationInquiry</class-name>
    <serializer>
    <class-name>CVOG_AllocationInquiry</class-name>
    <init-params>
    <init-param>
    <param-type>string</param-type>
    <param-value>1</param-value>
    </init-param>
    </init-params>
    </serializer>
    </user-type>
    </user-type-list>
    </pof-config>

    Hi Mark,
    i did go thru' the thread and understood that no "pof " mentioning in the cache xml file. I removed the pof config details from the cache xml config file and registersd the c++ class using the macro.
    after these, iwas able to start the extended proxy server from consol:
    When i try to do the same from my program as :
    String::View vsCacheName = "AllocInq-extend";
              CacheFactory::configure(CacheFactory::loadXmlFile(String::create ("/home/hema/workspace/CoherenceClient/config/cache-config_TCP.xml")),CacheFactory::loadXmlFile(String::create("/home/hema/workspace/CoherenceClient/config/tangosol-coherence-override.xml")));
              NamedCache::Handle hCache = NULL;
              hCache = CacheFactory::getCache(vsCacheName);
    i get the following error,
    Oracle Coherence for C++ Version 3.7.0.0 Build 23257
    RTC Linux x64 Release g++ build
    Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
    2011-09-06 08:01:48.185/13.197 Oracle Coherence for C++ RTC 3.7.0.0 <D5> (thread=ExtendTcpProxyService:coherence::component::util::TcpInitiator): Started: coherence::component::util::TcpInitiator@0x73d3c8{Name=ExtendTcpProxyService:coherence::component::util::TcpInitiator, State=(service_started), ThreadCount=0, Codec=coherence::component::net::extend::PofCodec@0x744300{Format=POF}, PingInterval=0, PingTimeout=5000, RequestTimeout=5000, ConnectTimeout=10000, RemoteAddresses=[sles/192.168.1.5:9099], KeepAliveEnabled=0, TcpDelayEnabled=0, ReceiveBufferSize=0, SendBufferSize=0, LingerTimeout=0}
    2011-09-06 08:01:48.187/13.199 Oracle Coherence for C++ RTC 3.7.0.0 <D5> (thread=main): Connecting Socket to sles/192.168.1.5:9099
    2011-09-06 08:01:51.199/16.211 Oracle Coherence for C++ RTC 3.7.0.0 <Info> (thread=main): Error connecting Socket to sles/192.168.1.5:9099: coherence::io::IOException: getpeername(nSocket, &addrPeer, &cbPeer) failed; errno[107]
    at virtual bool coherence::native::posix::PosixSocket::connect(coherence::lang::TypedHandle<const coherence::net::SocketAddress>, int64_t)(PosixSocket.hpp:640)
    at coherence::native::posix::PosixSocket::connect(coherence::lang::TypedHandle<coherence::net::SocketAddress const>, long)
    at coherence::net::Socket::connect(coherence::lang::TypedHandle<coherence::net::SocketAddress const>, long)
    at coherence::component::util::TcpInitiator::openConnection()
    at coherence::component::util::Initiator::ensureConnection()
    at coherence::component::net::extend::RemoteCacheService::openChannel()
    at coherence::component::net::extend::RemoteService::doStart()
    at coherence::component::net::extend::RemoteService::start()
    at coherence::component::util::SafeService::startService(coherence::lang::TypedHandle<coherence::net::Service>) const
    at coherence::component::util::SafeService::restartService() const
    at coherence::component::util::SafeService::ensureRunningServiceInternal(bool) const
    at coherence::component::util::SafeService::start()
    at coherence::net::DefaultConfigurableCacheFactory::configureService(coherence::lang::TypedHandle<coherence::run::xml::XmlElement const>)
    at coherence::net::DefaultConfigurableCacheFactory::ensureService(coherence::lang::String::StringHandle<coherence::lang::String const>)
    at coherence::net::DefaultConfigurableCacheFactory::ensureRemoteCache(coherence::lang::TypedHandle<coherence::net::DefaultConfigurableCacheFactory::CacheInfo const>, coherence::lang::TypedHandle<coherence::run::xml::XmlElement const>)
    at coherence::net::DefaultConfigurableCacheFactory::configureCache(coherence::lang::TypedHandle<coherence::net::DefaultConfigurableCacheFactory::CacheInfo const>, coherence::lang::TypedHandle<coherence::run::xml::XmlElement const>)
    at coherence::net::DefaultConfigurableCacheFactory::ensureCache(coherence::lang::String::StringHandle<coherence::lang::String const>)
    at coherence::net::CacheFactory::getCache(coherence::lang::String::StringHandle<coherence::lang::String const>)
    <stack frame symbol unavailable>
    at __libc_start_main
    on thread "main"
    2011-09-06 08:01:51.210/16.222 Oracle Coherence for C++ RTC 3.7.0.0 <Error> (thread=main): Unable to start service ExtendTcpProxyService: coherence::net::messaging::ConnectionException: could not establish a connection to one of the following addresses: {sles/192.168.1.5:9099}; make sure the "remote-addresses" configuration element contains an address and port of a running TcpAcceptor
    at virtual coherence::lang::TypedHandle<coherence::component::net::extend::PofConnection> coherence::component::util::TcpInitiator::openConnection()(TcpInitiator.cpp:284)
    at coherence::component::util::TcpInitiator::openConnection()
    at coherence::component::util::Initiator::ensureConnection()
    at coherence::component::net::extend::RemoteCacheService::openChannel()
    at coherence::component::net::extend::RemoteService::doStart()
    at coherence::component::net::extend::RemoteService::start()
    at coherence::component::util::SafeService::startService(coherence::lang::TypedHandle<coherence::net::Service>) const
    at coherence::component::util::SafeService::restartService() const
    at coherence::component::util::SafeService::ensureRunningServiceInternal(bool) const
    at coherence::component::util::SafeService::start()
    at coherence::net::DefaultConfigurableCacheFactory::configureService(coherence::lang::TypedHandle<coherence::run::xml::XmlElement const>)
    at coherence::net::DefaultConfigurableCacheFactory::ensureService(coherence::lang::String::StringHandle<coherence::lang::String const>)
    at coherence::net::DefaultConfigurableCacheFactory::ensureRemoteCache(coherence::lang::TypedHandle<coherence::net::DefaultConfigurableCacheFactory::CacheInfo const>, coherence::lang::TypedHandle<coherence::run::xml::XmlElement const>)
    at coherence::net::DefaultConfigurableCacheFactory::configureCache(coherence::lang::TypedHandle<coherence::net::DefaultConfigurableCacheFactory::CacheInfo const>, coherence::lang::TypedHandle<coherence::run::xml::XmlElement const>)
    at coherence::net::DefaultConfigurableCacheFactory::ensureCache(coherence::lang::String::StringHandle<coherence::lang::String const>)
    at coherence::net::CacheFactory::getCache(coherence::lang::String::StringHandle<coherence::lang::String const>)
    <stack frame symbol unavailable>
    at __libc_start_main
    on thread "main"
    coherence::net::messaging::ConnectionException: could not establish a connection to one of the following addresses: {sles/192.168.1.5:9099}; make sure the "remote-addresses" configuration element contains an address and port of a running TcpAcceptor
    at virtual coherence::lang::TypedHandle<coherence::component::net::extend::PofConnection> coherence::component::util::TcpInitiator::openConnection()(TcpInitiator.cpp:284)
    at coherence::component::util::TcpInitiator::openConnection()
    at coherence::component::util::Initiator::ensureConnection()
    at coherence::component::net::extend::RemoteCacheService::openChannel()
    at coherence::component::net::extend::RemoteService::doStart()
    at coherence::component::net::extend::RemoteService::start()
    at coherence::component::util::SafeService::startService(coherence::lang::TypedHandle<coherence::net::Service>) const
    at coherence::component::util::SafeService::restartService() const
    at coherence::component::util::SafeService::ensureRunningServiceInternal(bool) const
    at coherence::component::util::SafeService::start()
    at coherence::net::DefaultConfigurableCacheFactory::configureService(coherence::lang::TypedHandle<coherence::run::xml::XmlElement const>)
    at coherence::net::DefaultConfigurableCacheFactory::ensureService(coherence::lang::String::StringHandle<coherence::lang::String const>)
    at coherence::net::DefaultConfigurableCacheFactory::ensureRemoteCache(coherence::lang::TypedHandle<coherence::net::DefaultConfigurableCacheFactory::CacheInfo const>, coherence::lang::TypedHandle<coherence::run::xml::XmlElement const>)
    at coherence::net::DefaultConfigurableCacheFactory::configureCache(coherence::lang::TypedHandle<coherence::net::DefaultConfigurableCacheFactory::CacheInfo const>, coherence::lang::TypedHandle<coherence::run::xml::XmlElement const>)
    at coherence::net::DefaultConfigurableCacheFactory::ensureCache(coherence::lang::String::StringHandle<coherence::lang::String const>)
    at coherence::net::CacheFactory::getCache(coherence::lang::String::StringHandle<coherence::lang::String const>)
    <stack frame symbol unavailable>
    at __libc_start_main
    on thread "main"
    Pls can you suggest something, greatly appreciated in advance.
    althouh i did observe one thing,, when i start the service from console, the ip is different. But from the program, it displays the different ip that it looks for connection and fails.

  • Error while starting Managed server in wls

    I am using WebLogic Server Version: 10.3.4.0. I have created one managed server thru admin console. I am starting managed server using startManagedWebLogic.cmd batch file. Chnages I made in this cmd file is added managed server name and wls userid/password.
    When execute this, I get below error:
    Server
    Exception in thread "Main Thread" java.lang.NoClassDefFoundError: weblogic/Server
    Caused by: java.lang.ClassNotFoundException: weblogic.Server
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
    Could not find the main class: weblogic.Server.  Program will exit.
    The contents of the startManagedWebLogic.cmd is as below:
    @ECHO OFF
    @REM WARNING: This file is created by the Configuration Wizard.
    @REM Any changes to this script may be lost when adding extensions to this configuration.
    SETLOCAL
    @REM --- Start Functions ---
    GOTO :ENDFUNCTIONS
    :usage
         echo Need to set SERVER_NAME and ADMIN_URL environment variables or specify
         echo them in command line:
         echo Usage: %1 SERVER_NAME {ADMIN_URL}
         echo for example:
         echo %1 managedserver1 http://localhost:7001
    GOTO :EOF
    :ENDFUNCTIONS
    @REM --- End Functions ---
    @REM *************************************************************************
    @REM This script is used to start a managed WebLogic Server for the domain in
    @REM the current working directory. This script can either read in the SERVER_NAME and
    @REM ADMIN_URL as positional parameters or will read them from environment variables that are
    @REM set before calling this script. If SERVER_NAME is not sent as a parameter or exists with a value
    @REM as an environment variable the script will EXIT. If the ADMIN_URL value cannot be determined
    @REM by reading a parameter or from the environment a default value will be used.
    @REM
    @REM For additional information, refer to "Managing Server Startup and Shutdown for Oracle WebLogic Server"
    @REM (http://download.oracle.com/docs/cd/E17904_01/web.1111/e13708/overview.htm)
    @REM *************************************************************************
    @REM Set SERVER_NAME to the name of the server you wish to start up.
    Set SERVER_NAME=*ManagedServer1*
    set DOMAIN_NAME=mydomain
    set ADMIN_URL=http://localhost:7001
    @REM Set WLS_USER equal to your system username and WLS_PW equal
    @REM to your system password for no username and password prompt
    @REM during server startup. Both are required to bypass the startup
    @REM prompt.
    set WLS_USER=*weblogic*
    set WLS_PW=*weblogic1*
    @REM Set JAVA_OPTIONS to the java flags you want to pass to the vm. i.e.:
    @REM set JAVA_OPTIONS=-Dweblogic.attribute=value -Djava.attribute=value
    set JAVA_OPTIONS=-Dweblogic.security.SSL.trustedCAKeyStore="d:\Perforce\weblogic1\src_16020jr\bea\wlserver_10.3\server\..\server\lib\cacerts" %JAVA_OPTIONS%
    @REM Set JAVA_VM to the java virtual machine you want to run. For instance:
    @REM set JAVA_VM=-server
    set JAVA_VM=
    @REM Set SERVER_NAME and ADMIN_URL, they must by specified before starting
    @REM a managed server, detailed information can be found at
    @REM http://download.oracle.com/docs/cd/E17904_01/web.1111/e13708/overview.htm
    if "%1"=="" (
         if "%SERVER_NAME%"=="" (
              CALL :usage %0
              GOTO :EOF
    ) else (
         set SERVER_NAME=%1
         shift
    if "%1"=="" (
         if "%ADMIN_URL%"=="" (
              CALL :usage %0
              GOTO :EOF
    ) else (
         set ADMIN_URL=%1
         shift
    @REM Export the admin_url whether the user specified it OR it was sent on the command-line
    set ADMIN_URL=%ADMIN_URL%
    set SERVER_NAME=%SERVER_NAME%
    set DOMAIN_HOME=D:\Perforce\weblogic1\dev\src_crmod\wls\mytest
    if "%1"=="" (
         @REM Call Weblogic Server with our default params since the user did not specify any other ones
         call "%DOMAIN_HOME%\bin\startWebLogic.cmd" nodebug noderby noiterativedev notestconsole noLogErrorsToConsole
    ) else (
         @REM Call Weblogic Server with the params the user sent in INSTEAD of the defaults
         call "%DOMAIN_HOME%\bin\startWebLogic.cmd" %1 %2 %3 %4 %5 %6 %7 %8 %9
    ENDLOCAL
    Any help is really appreciated.

    I could see calling to setDomainEnv.cmd script:
    *@REM Call setDomainEnv here.*
    set DOMAIN_HOME=D:\Perforce\weblogic1\dev\src_crmod\wls\mytest
    for %%i in ("%DOMAIN_HOME%") do set DOMAIN_HOME=%%~fsi
    call "%DOMAIN_HOME%\bin\setDomainEnv.cmd" %*
    set SAVE_JAVA_OPTIONS=%JAVA_OPTIONS%
    set SAVE_CLASSPATH=%CLASSPATH%
    But in my environment I do not see these variable set to any, JAVA_HOME, DERBY_CLASSPATH, JAVA_OPTIONS, CLASS_PATH.
    This might be the issue? Or anything else?

  • Web app Connection.close()...how to prevent

    Hello
    I am somewhat new to this, but I am developing an web application that will be a help desk of sorts for clients to log on and create trouble tickets, plus many other features. I have completed the project and it works fine when I first start tomcat but an unexpected state keeps occurring and I can't seem to figure it out.
    After a while (I say a while cause I'm not sure exactly how long, but I'd say +5 hours) my application no longer will work and in the tomcat log I get the following message.
    Could not execute a query statement!Connection.close() has already been called. Invalid operation in this state.
    java.sql.SQLException: Connection:close() has already been called.
    at com.mysql.jdbc.Connection.getMutex(Connection.java:1906)
    at com.mysql.jdbc.Statement.executeQuery(Statement.java:1115)
    at brokers.RelationalBroker.query(RelationalBroker.java:171)
    the RelationalBroker.java is
    package brokers;
    * Created on May 12, 2004
    * Class: RelationalBroker
    * Package: brokers
    * On-Track, Ticket Tracking System
    * @author
    * @version
    * This Class is used as the super class for all of the child brokers
    * for the database. The main purpose if this class is to allow all the
    * child classes to share the open connection to the database and execute
    * queries and updates on the database. This class is part of the brokers
    * package.
    //imports
    import java.sql.*;
    public class RelationalBroker {
        //Instance Attributes
         * The attribute con represented by a Connection object is used to hold
         * the active connection to the database. This connection is shared with
         * all of the child brokers.
        private Connection con = null;
         * The attribute statement represented by a Statement object is used to
         * execute the query and update statements on the database by the child
         * brokers.
        private Statement statement = null;
         * The attribute results represented by a ResultSet is used to hold
         * the results of a query executed on the database.
        private ResultSet results = null;
        //Constructors
         * Default constructor used to create a RelationalBroker object.
        public RelationalBroker(){
        //     Getters
         * The Getter getCon is used to get the Connection object.
         * @return Connection con.
        public Connection getCon() {
            return con;
         * The Getter getResults is used to get the ResultSet results.
         * @return ResultSet results.
        public ResultSet getResults() {
            return results;
         * The Getter getStatement is used to get the Statement object.
         * @return Statement statement.
        public Statement getStatement() {
            return statement;
        //Methods
         * The method connect is used to connect to the database given a username
         * password, location of driver, and URL of the database. This method also
         * creates the Statement object to be used for queries ans updates on the database.
         * @param driver A String containing the location of the database driver.
         * @param URL A String containing the location of the database on a netowrk.
         * @param user A String containing the username of the database account.
         * @param pass A String containing the password of the database account.
        public void connect(String driver, String URL, String user, String pass){
            try{
                Class.forName(driver);
                con = DriverManager.getConnection(URL, user, pass);
                statement = con.createStatement();
            catch (ClassNotFoundException cExp){
                System.out.println("Cannot find class for driver");
            catch (SQLException sqle){
                System.out.println("Error opening table or creating statement!: " + sqle.getMessage());
                sqle.printStackTrace();
                System.exit(0);
         * The method closeConnection is used to close the active connection
         * to the database.
         * @return A boolean containing the status of the connection, True if closed
         * false if open.
        public boolean closeConnection(){
            boolean isClosed = false;
            try{
                con.close();
                isClosed = con.isClosed();
            catch(SQLException sqle){
                System.out.println("Error closing connection!" + sqle.getMessage());
            //finally{
            return isClosed;
         * The method rollBack is used to execute a rollback statement on
         * the database, to undo any changes since the last commit.
         * @return void
        public void rollBack(){
            try{
                con.rollback();
            catch(SQLException sqle){
                System.out.println("Could not execute a  Rollback statement!" + sqle.getMessage());
                sqle.printStackTrace();
         * The method commit is used to execute a commit statement on the
         * database, to make any changes final.
         * @return void
        public void commit(){
            try{
                statement.executeUpdate("commit");
            catch (SQLException sqle){
                System.out.println("Could not execute a commit statement!" + sqle.getMessage());
                sqle.printStackTrace();
         * The method query is used to exceute a query statement on the
         * database to get back some results.
         * @param query A String containing the query to be executed on the database
         * @return a ResultSet containing the results.
        public ResultSet query(String query){
            results = null;
            try{
                //System.out.println("query: "+query);
                results = statement.executeQuery(query);
            catch(SQLException sqle){
                System.out.println("Could not execute a query statement!" + sqle.getMessage());
                sqle.printStackTrace();
            //finally{
            return results;
         * The method update is used to persist or remove information
         * from the database.
         * @param update String containing the update string to be exceuted;
        public void update(String update){
            try{
                statement.executeUpdate(update);
            catch(SQLException sqle){
                System.out.println("Could not execute an update statement!" + sqle.getMessage());
                sqle.printStackTrace();
    }//end classmy web.xml file to initialize with the database is as follows
    <servlet>
              <servlet-name>Connection</servlet-name>
              <servlet-class>servlets.ConnectionServlet</servlet-class>
              <init-param>
                   <param-name>url</param-name>
                   <param-value>jdbc:mysql://localhost/TICKETTRACK</param-value>
              </init-param>
              <init-param>
                   <param-name>driver</param-name>
                   <param-value>com.mysql.jdbc.Driver</param-value>
              </init-param>
              <init-param>
                   <param-name>user</param-name>
                   <param-value>---</param-value>
              </init-param>
              <init-param>
                   <param-name>password</param-name>
                   <param-value>---</param-value>
              </init-param>
              <load-on-startup>1</load-on-startup>
         </servlet>
    the ConnectionServlet.java is
    package servlets;
    import javax.servlet.http.*;
    import javax.servlet.*;
    import java.io.*;
    import java.sql.*;
    import java.util.*;
    import problemDomain.*;
    import brokers.*;
    * Title:
    * Description:      This servlet is used to create a connection with .
    * @author
    * @version 1.0
    public class ConnectionServlet  extends HttpServlet{
        private UserBroker uBroker;
        private TicketBroker tBroker;
        private CompanyBroker cBroker;
        public void init() throws ServletException{
            ServletConfig config = getServletConfig();
            String user = config.getInitParameter("user");
            String pass  = config.getInitParameter("password");
            String url  = config.getInitParameter("url");
            String driver = config.getInitParameter("driver");
            uBroker = UserBroker.getUserBroker();
            tBroker = TicketBroker.getTicketBroker();
            cBroker = CompanyBroker.getCompanyBroker();
            uBroker.connect(driver,url,user,pass);
            tBroker.connect(driver,url,user,pass);
            cBroker.connect(driver,url,user,pass);
    /*  This method is used to close the connection.
    *  @param none
    *  @return none.
        public void destroy() {
            try{
            }catch(Exception ec){
                System.err.println(ec);
    }I hope this is enough information for someone to help out. I'm out of ideas and my searches on the web didn't turn up much.
    I was thinking it was something to do with ConnectionPooling but I have never done that, or maybe its something to do with how I set up Connections or maybe its my Tomcat config or something to do with Mysql. I'm not even calling a Connection.close(), maybe that is my problem.
    Any help would be greatly appreciated, I'm not just looking for an answer I really would like to know why this occurs and how it can be prevented.
    Thanks,

    I really appreciate your reply and I can understand what you mean in theory(I think) but to actually implement it I'm having a little trouble.
    So for this database pool, in my ConnectionServlet which gets initialized on startup, should I create a Collection of connections for each instance(make them local), and than create another method to retrieve one of these connection when needed and when finished release it back to the collection(close)? Or is there some built in mechanism that can easily do this?
    I'm also reading up on that keep-alive you mentioned...it applies to the HTTP Connector element right? Is there a way to tell if this is an issue? I'm using Tomcat 5 and mySQL 3. I was talking with another guy here about using a connector to apache so it will work with the static pages and Tomcat do the servlet stuff, but I'm still trying to grasp all that.
    I don't know if this matters but many instances/windows of the web app can be opened at one time with seemingly no problems.
    Hope this made sense, like I said I'm pretty new to this so all I'm used to is simple configurations of web apps but hopefully I can advance further.
    Thanks again,

  • Share script about ocsg & weblogic

    111setConnEnv.sh :
    #!/bin/bash
    # Set the general domain environment.
    . ~/ocsgCourse/domains/labDomain/bin/setDomainEnv.sh
    # The setDomainEnv script changes the working directory.
    # Use popd to jump back to where we were.
    popd
    # Set general environment variables to be used in all WLST scripts.
    USERNAME="weblogic"
    export USERNAME
    PASSWORD="p4ssw0rd"
    export PASSWORD
    HOSTNAME="localhost"
    export HOSTNAME
    PORT="8001"
    export PORT
    222start_lab_pte.sh :
    #!/bin/sh
    . /opt/ocsg500/wlserver_10.3/common/bin/commEnv.sh
    /opt/ocsg500/ocsg_pds_5.0/pte/run.sh
    333startWebLogic.sh :
    #!/bin/sh
    # WARNING: This file is created by the Configuration Wizard.
    # Any changes to this script may be lost when adding extensions to this configuration.
    DOMAIN_HOME="/home/oracle/ocsgCourse/domains/labDomain"
    ${DOMAIN_HOME}/bin/startWebLogic.sh $*
    444setDomainEnv.sh :
    #!/bin/sh
    # WARNING: This file is created by the Configuration Wizard.
    # Any changes to this script may be lost when adding extensions to this configuration.
    # --- Start Functions ---
    BP=100
    SP=$BP
    pushd()
         if [ -z "$1" ]
         then
              return
         fi
         SP=`expr $SP - 1`
         eval _stack$SP=`pwd`
         cd $1
         return
    popd()
         if [ $SP -eq $BP ]
         then
              return
         fi
         eval cd \${_stack$SP}
         SP=`expr $SP + 1`
         return
    # --- End Functions ---
    # This script is used to setup the needed environment to be able to start Weblogic Server in this domain.
    # This script initializes the following variables before calling commEnv to set other variables:
    # WL_HOME - The BEA home directory of your WebLogic installation.
    # JAVA_VM - The desired Java VM to use. You can set this environment variable before calling
    # this script to switch between Sun or BEA or just have the default be set.
    # JAVA_HOME - Location of the version of Java used to start WebLogic
    # Server. Depends directly on which JAVA_VM value is set by default or by the environment.
    # USER_MEM_ARGS - The variable to override the standard memory arguments
    # passed to java.
    # PRODUCTION_MODE - The variable that determines whether Weblogic Server is started in production mode.
    # DOMAIN_PRODUCTION_MODE
    # - The variable that determines whether the workshop related settings like the debugger,
    # testconsole or iterativedev should be enabled. ONLY settable using the
    # command-line parameter named production
    # NOTE: Specifying the production command-line param will force
    # the server to start in production mode.
    # Other variables used in this script include:
    # SERVER_NAME - Name of the weblogic server.
    # JAVA_OPTIONS - Java command-line options for running the server. (These
    # will be tagged on to the end of the JAVA_VM and
    # MEM_ARGS)
    # For additional information, refer to the WebLogic Server Administration
    # Console Online Help(http://e-docs.bea.com/wls/docs92/ConsoleHelp/startstop.html).
    WL_HOME="/opt/ocsg50/wlserver_10.3"
    export WL_HOME
    BEA_JAVA_HOME="/opt/ocsg50/jrockit_160_17_R28.0.0-677"
    export BEA_JAVA_HOME
    SUN_JAVA_HOME="/opt/ocsg50/jdk160_18"
    export SUN_JAVA_HOME
    WLNG_HOME="/opt/ocsg50/ocsg_5.0"
    export WLNG_HOME
    if [ "${JAVA_VENDOR}" = "BEA" ] ; then
         JAVA_HOME="${BEA_JAVA_HOME}"
         export JAVA_HOME
    else
         if [ "${JAVA_VENDOR}" = "Sun" ] ; then
              JAVA_HOME="${SUN_JAVA_HOME}"
              export JAVA_HOME
         else
    JAVA_VENDOR="Oracle"
              export JAVA_VENDOR
    JAVA_HOME="/opt/ocsg50/jrockit_160_17_R28.0.0-677"
              export JAVA_HOME
         fi
    fi
    # We need to reset the value of JAVA_HOME to get it shortened AND
    # we can not shorten it above because immediate variable expansion will blank it
    JAVA_HOME="${JAVA_HOME}"
    export JAVA_HOME
    SAMPLES_HOME="${WL_HOME}/samples"
    export SAMPLES_HOME
    DOMAIN_HOME="/home/oracle/ocsgCourse/domains/labDomain"
    export DOMAIN_HOME
    LONG_DOMAIN_HOME="/home/oracle/ocsgCourse/domains/labDomain"
    export LONG_DOMAIN_HOME
    if [ "${DEBUG_PORT}" = "" ] ; then
         DEBUG_PORT="8453"
         export DEBUG_PORT
    fi
    if [ "${SERVER_NAME}" = "" ] ; then
    SERVER_NAME="AdminServer"
         export SERVER_NAME
    fi
    # Disable WLS WebService exception trace
    JAVA_OPTIONS="${JAVA_OPTIONS} -Dweblogic.wsee.component.exception=false"
    # Optional ORB configuration
    #JAVA_OPTIONS="${JAVA_OPTIONS} -Dwlng.corba.host=localhost"
    #JAVA_OPTIONS="${JAVA_OPTIONS} -Dwlng.corba.port=10001"
    #JAVA_OPTIONS="${JAVA_OPTIONS} -Dwlng.corba.thread_pool_size=100"
    #JAVA_OPTIONS="${JAVA_OPTIONS} -Dwlng.corba.request_timeout=10000"
    #JAVA_OPTIONS="${JAVA_OPTIONS} -Dwlng.corba.connect_timeout=3000"
    JAVA_OPTIONS="${JAVA_OPTIONS} -Docsg.dir.name=ocsg_5.0"
    JAVA_OPTIONS="${JAVA_OPTIONS} -Dpds.dir.name=ocsg_pds_5.0"
    JAVA_OPTIONS="${JAVA_OPTIONS} -Dmodules.dir.name=modules"
    export JAVA_OPTIONS
    POINTBASE_FLAG="false"
    export POINTBASE_FLAG
    enableHotswapFlag=""
    export enableHotswapFlag
    PRODUCTION_MODE=""
    export PRODUCTION_MODE
    doExitFlag="false"
    export doExitFlag
    verboseLoggingFlag="false"
    export verboseLoggingFlag
    while [ $# -gt 0 ]
    do
         case $1 in
         nodebug)
              debugFlag="false"
              export debugFlag
         production)
              DOMAIN_PRODUCTION_MODE="true"
              export DOMAIN_PRODUCTION_MODE
         notestconsole)
              testConsoleFlag="false"
              export testConsoleFlag
         noiterativedev)
              iterativeDevFlag="false"
              export iterativeDevFlag
         noLogErrorsToConsole)
              logErrorsToConsoleFlag="false"
              export logErrorsToConsoleFlag
         nopointbase)
              POINTBASE_FLAG="false"
              export POINTBASE_FLAG
         doExit)
              doExitFlag="true"
              export doExitFlag
         noExit)
              doExitFlag="false"          export doExitFlag
         verbose)
              verboseLoggingFlag="true"
              export verboseLoggingFlag
         enableHotswap)
              enableHotswapFlag="-javaagent:${WL_HOME}/server/lib/diagnostics-agent.jar"
              export enableHotswapFlag
              PROXY_SETTINGS="${PROXY_SETTINGS} $1"
              export PROXY_SETTINGS
         esac
         shift
    done
    if [ "${DOMAIN_PRODUCTION_MODE}" = "true" ] ; then
         PRODUCTION_MODE="${DOMAIN_PRODUCTION_MODE}"
         export PRODUCTION_MODE
    fi
    if [ "${PRODUCTION_MODE}" = "true" ] ; then
         debugFlag="false"
         export debugFlag
         testConsoleFlag="false"
         export testConsoleFlag
         iterativeDevFlag="false"
         export iterativeDevFlag
    fi
    # If you want to override the default Patch Classpath, Library Path and Path for this domain,
    # Please uncomment the following lines and add a valid value for the environment variables
    # set PATCH_CLASSPATH=[myPatchClasspath] (windows)
    # set PATCH_LIBPATH=[myPatchLibpath] (windows)
    # set PATCH_PATH=[myPatchPath] (windows)
    # PATCH_CLASSPATH=[myPatchClasspath] (unix)
    # PATCH_LIBPATH=[myPatchLibpath] (unix)
    # PATCH_PATH=[myPatchPath] (unix)
    . ${WL_HOME}/common/bin/commEnv.sh
    #Add WLNG store schema directory to WLS extension directories
    WEBLOGIC_EXTENSION_DIRS=${WEBLOGIC_EXTENSION_DIRS}${CLASSPATHSEP}${DOMAIN_HOME}/config/store_schema
    WLS_HOME="${WL_HOME}/server"
    export WLS_HOME
    WLI_HOME="${WL_HOME}/integration"
    export WLI_HOME
    MEM_ARGS="-Xms256m -Xmx512m"
    if [ "${PRODUCTION_MODE}" = "true" ] ; then
    MEM_ARGS="-Xms512m -Xmx512m"
    if [ "${JAVA_VENDOR}" = "Sun" ] ; then
    MEM_ARGS="${MEM_ARGS} -Xmn256m -XX:+UseParallelGC -XX:+UseParallelOldGC -XX:SurvivorRatio=8 -XX:TargetSurvivorRatio=90"
    fi
    else
    if [ "${JAVA_VENDOR}" = "Sun" ] ; then
    MEM_ARGS="${MEM_ARGS} -XX:CompileThreshold=8000 -XX:PermSize=256m"
    fi
    fi
    export MEM_ARGS
    if [ "${JAVA_VENDOR}" = "Sun" ] ; then
         MEM_ARGS="${MEM_ARGS} -XX:MaxPermSize=256m"
         export MEM_ARGS
    fi
    if [ "${JAVA_VENDOR}" = "HP" ] ; then
         MEM_ARGS="${MEM_ARGS} -XX:MaxPermSize=128m"
         export MEM_ARGS
    fi
    # IF USER_MEM_ARGS the environment variable is set, use it to override ALL MEM_ARGS values
    if [ "${USER_MEM_ARGS}" != "" ] ; then
         MEM_ARGS="${USER_MEM_ARGS}"
         export MEM_ARGS
    fi
    JAVA_PROPERTIES="-Dplatform.home=${WL_HOME} -Dwls.home=${WLS_HOME} -Dwli.home=${WLI_HOME}"
    export JAVA_PROPERTIES
    # To use Java Authorization Contract for Containers (JACC) in this domain,
    # please uncomment the following section. If there are multiple machines in
    # your domain, be sure to edit the setDomainEnv in the associated domain on
    # each machine.
    # -Djava.security.manager
    # -Djava.security.policy=location of weblogic.policy
    # -Djavax.security.jacc.policy.provider=weblogic.security.jacc.simpleprovider.SimpleJACCPolicy
    # -Djavax.security.jacc.PolicyConfigurationFactory.provider=weblogic.security.jacc.simpleprovider.PolicyConfigurationFactoryImpl
    # -Dweblogic.security.jacc.RoleMapperFactory.provider=weblogic.security.jacc.simpleprovider.RoleMapperFactoryImpl
    JAVA_PROPERTIES="${JAVA_PROPERTIES} ${EXTRA_JAVA_PROPERTIES}"
    export JAVA_PROPERTIES
    ARDIR="${WL_HOME}/server/lib"
    export ARDIR
    pushd ${LONG_DOMAIN_HOME}
    # Clustering support (edit for your cluster!)
    if [ "${ADMIN_URL}" = "" ] ; then
         # The then part of this block is telling us we are either starting an admin server OR we are non-clustered
         CLUSTER_PROPERTIES="-Dweblogic.management.discover=true"
         export CLUSTER_PROPERTIES
    else
         CLUSTER_PROPERTIES="-Dweblogic.management.discover=false -Dweblogic.management.server=${ADMIN_URL}"
         export CLUSTER_PROPERTIES
    fi
    if [ "${LOG4J_CONFIG_FILE}" != "" ] ; then
         JAVA_PROPERTIES="${JAVA_PROPERTIES} -Dlog4j.configuration=file:${LOG4J_CONFIG_FILE}"
         export JAVA_PROPERTIES
    fi
    JAVA_PROPERTIES="${JAVA_PROPERTIES} ${CLUSTER_PROPERTIES}"
    export JAVA_PROPERTIES
    # Clear the pre_classpath here in case an application template wants to set it before the larger pre_classpath is invoked below
    PRE_CLASSPATH=""
    export PRE_CLASSPATH
    JAVA_DEBUG=""
    export JAVA_DEBUG
    if [ "${debugFlag}" = "true" ] ; then
         JAVA_DEBUG="-Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=${DEBUG_PORT},server=y,suspend=n -Djava.compiler=NONE"
         export JAVA_DEBUG
         JAVA_OPTIONS="${JAVA_OPTIONS} ${enableHotswapFlag} -ea -da:com.bea... -da:javelin... -da:weblogic... -ea:com.bea.wli... -ea:com.bea.broker... -ea:com.bea.sbconsole..."
         export JAVA_OPTIONS
    else
         JAVA_OPTIONS="${JAVA_OPTIONS} ${enableHotswapFlag} -da"
         export JAVA_OPTIONS
    fi
    if [ ! -d ${JAVA_HOME}/lib ] ; then
         echo "The JRE was not found in directory ${JAVA_HOME}. (JAVA_HOME)"
         echo "Please edit your environment and set the JAVA_HOME"
         echo "variable to point to the root directory of your Java installation."
         popd
         read _val
         exit
    fi
    if [ "${POINTBASE_FLAG}" = "true" ] ; then
         DATABASE_CLASSPATH="${POINTBASE_CLASSPATH}"
         export DATABASE_CLASSPATH
    else
         DATABASE_CLASSPATH="${POINTBASE_CLIENT_CLASSPATH}"
         export DATABASE_CLASSPATH
    fi
    POST_CLASSPATH=""
    export POST_CLASSPATH
    POST_CLASSPATH="${POST_CLASSPATH}${CLASSPATHSEP}${DATABASE_CLASSPATH}${CLASSPATHSEP}${ARDIR}/xqrl.jar"
    export POST_CLASSPATH
    # PROFILING SUPPORT
    JAVA_PROFILE=""
    export JAVA_PROFILE
    SERVER_CLASS="weblogic.Server"
    export SERVER_CLASS
    JAVA_PROPERTIES="${JAVA_PROPERTIES} ${WLP_JAVA_PROPERTIES}"
    export JAVA_PROPERTIES
    JAVA_OPTIONS="${JAVA_OPTIONS} ${JAVA_PROPERTIES} -Dwlw.iterativeDev=${iterativeDevFlag} -Dwlw.testConsole=${testConsoleFlag} -Dwlw.logErrorsToConsole=${logErrorsToConsoleFlag}"
    export JAVA_OPTIONS
    # -- Setup properties so that we can save stdout and stderr to files
    if [ "${WLS_STDOUT_LOG}" != "" ] ; then
         echo "Logging WLS stdout to ${WLS_STDOUT_LOG}"
         JAVA_OPTIONS="${JAVA_OPTIONS} -Dweblogic.Stdout=${WLS_STDOUT_LOG}"
         export JAVA_OPTIONS
    fi
    if [ "${WLS_STDERR_LOG}" != "" ] ; then
         echo "Logging WLS stderr to ${WLS_STDERR_LOG}"
         JAVA_OPTIONS="${JAVA_OPTIONS} -Dweblogic.Stderr=${WLS_STDERR_LOG}"
         export JAVA_OPTIONS
    fi
    # ADD EXTENSIONS TO CLASSPATHS
    if [ "${EXT_PRE_CLASSPATH}" != "" ] ; then
         PRE_CLASSPATH="${EXT_PRE_CLASSPATH}${CLASSPATHSEP}${PRE_CLASSPATH}"
         export PRE_CLASSPATH
    fi
    if [ "${EXT_POST_CLASSPATH}" != "" ] ; then
         POST_CLASSPATH="${POST_CLASSPATH}${CLASSPATHSEP}${EXT_POST_CLASSPATH}"
         export POST_CLASSPATH
    fi
    if [ "${WEBLOGIC_EXTENSION_DIRS}" != "" ] ; then
         JAVA_OPTIONS="${JAVA_OPTIONS} -Dweblogic.ext.dirs=${WEBLOGIC_EXTENSION_DIRS}"
         export JAVA_OPTIONS
    fi
    WLNG_CLASSPATH="${WLNG_HOME}/server/lib/wlng"
    JAVA_OPTIONS="${JAVA_OPTIONS} -Djava.endorsed.dirs=${WLNG_CLASSPATH}/endorsed"
    JAVA_OPTIONS="${JAVA_OPTIONS} -Dwlss.replication=colocated -Dwlss.allow.warm.restart=true"
    JAVA_OPTIONS="${JAVA_OPTIONS} -Dreplica.client.init.retry=5000"
    JAVA_OPTIONS="${JAVA_OPTIONS} -Dreplica.client.timer.poll.allowance=30000"
    JAVA_OPTIONS="${JAVA_OPTIONS} -Dreplica.client.timer.checkup.timeout=30000"
    JAVA_OPTIONS="${JAVA_OPTIONS}"
    export JAVA_OPTIONS
    # SET THE CLASSPATH
    CLASSPATH="${PRE_CLASSPATH}${CLASSPATHSEP}${WEBLOGIC_CLASSPATH}${CLASSPATHSEP}${POST_CLASSPATH}${CLASSPATHSEP}${WLP_POST_CLASSPATH}"
    export CLASSPATH
    JAVA_VM="${JAVA_VM} ${JAVA_DEBUG} ${JAVA_PROFILE}"
    export JAVA_VM
    555startManagedWeblogic.sh :
    #!/bin/sh
    # WARNING: This file is created by the Configuration Wizard.
    # Any changes to this script may be lost when adding extensions to this configuration.
    # --- Start Functions ---
    usage()
         echo "Need to set SERVER_NAME and ADMIN_URL environment variables or specify"
         echo "them in command line:"
         echo "Usage: $1 SERVER_NAME {ADMIN_URL}"
         echo "for example:"
         echo "%1 managedserver1 http://localhost:7001"
    # --- End Functions ---
    # This script is used to start a managed WebLogic Server for the domain in
    # the current working directory. This script can either read in the SERVER_NAME and
    # ADMIN_URL as positional parameters or will read them from environment variables that are
    # set before calling this script. If SERVER_NAME is not sent as a parameter or exists with a value
    # as an environment variable the script will EXIT. If the ADMIN_URL value cannot be determined
    # by reading a parameter or from the environment a default value will be used.
    # For additional information, refer to the WebLogic Server Administration
    # Guide (http://e-docs.bea.com/wls/docs92/adminguide)
    # Set SERVER_NAME to the name of the server you wish to start up.
    DOMAIN_NAME="labDomain"
    ADMIN_URL="http://localhost:8001"
    # Set WLS_USER equal to your system username and WLS_PW equal
    # to your system password for no username and password prompt
    # during server startup. Both are required to bypass the startup
    # prompt.
    WLS_USER=""
    export WLS_USER
    WLS_PW=""
    export WLS_PW
    # Set JAVA_OPTIONS to the java flags you want to pass to the vm. i.e.:
    # set JAVA_OPTIONS=-Dweblogic.attribute=value -Djava.attribute=value
    JAVA_OPTIONS="-Dweblogic.security.SSL.trustedCAKeyStore="/opt/ocsg50/wlserver_10.3/server/lib/cacerts" ${JAVA_OPTIONS}"
    # Set JAVA_VM to the java virtual machine you want to run. For instance:
    # set JAVA_VM=-server
    JAVA_VM=""
    # Set SERVER_NAME and ADMIN_URL, they must by specified before starting
    # a managed server, detailed information can be found at
    # http://e-docs.bea.com/wls/docs92/adminguide
    if [ "$1" = "" ] ; then
         if [ "${SERVER_NAME}" = "" ] ; then
              usage %0
              exit
         fi
    else
         SERVER_NAME="$1"
         shift
    fi
    if [ "$1" = "" ] ; then
         if [ "${ADMIN_URL}" = "" ] ; then
              usage %0
              exit
         fi
    else
         ADMIN_URL="$1"
         shift
    fi
    # Export the admin_url whether the user specified it OR it was sent on the command-line
    ADMIN_URL="${ADMIN_URL}"
    export ADMIN_URL
    SERVER_NAME="${SERVER_NAME}"
    export SERVER_NAME
    DOMAIN_HOME="/home/oracle/ocsgCourse/domains/labDomain"
    if [ "$1" = "" ] ; then
         # Call Weblogic Server with our default params since the user did not specify any other ones
         ${DOMAIN_HOME}/bin/startWebLogic.sh nodebug nopointbase noiterativedev notestconsole
    else
         # Call Weblogic Server with the params the user sent in INSTEAD of the defaults
         ${DOMAIN_HOME}/bin/startWebLogic.sh $1 $2 $3 $4 $5 $6 $7 $8 $9
    fi
    666startPointBaseConsole :
    #!/bin/sh
    # WARNING: This file is created by the Configuration Wizard.
    # Any changes to this script may be lost when adding extensions to this configuration.
    # Call setDomainEnv here to get the correct pointbase port
    DOMAIN_HOME="/home/oracle/ocsgCourse/domains/labDomain"
    . ${DOMAIN_HOME}/bin/setDomainEnv.sh
    ${WL_HOME}/common/bin/startPointBaseConsole.sh -port=${POINTBASE_PORT}
    777startWebLogic.sh :
    #!/bin/sh
    # WARNING: This file is created by the Configuration Wizard.
    # Any changes to this script may be lost when adding extensions to this configuration.
    # --- Start Functions ---
    stopAll()
         # We separate the stop commands into a function so we are able to use the trap command in Unix (calling a function) to stop these services
         if [ "X${ALREADY_STOPPED}" != "X" ] ; then
              exit
         fi
         # STOP POINTBASE (only if we started it)
         if [ "${POINTBASE_FLAG}" = "true" ] ; then
              echo "Stopping PointBase server..."
              ${WL_HOME}/common/bin/stopPointBase.sh -port=${POINTBASE_PORT} -name=${POINTBASE_DBNAME} >"${DOMAIN_HOME}/pointbaseShutdown.log" 2>&1
              echo "PointBase server stopped."
         fi
         ALREADY_STOPPED="true"
         # Restore IP configuration the node manager starts IP Migration
         if [ "${SERVER_IP}" != "" ] ; then
              ${WL_HOME}/common/bin/wlsifconfig.sh -removeif "${IFNAME}" "${SERVER_IP}"
         fi
    # --- End Functions ---
    # This script is used to start WebLogic Server for this domain.
    # To create your own start script for your domain, you can initialize the
    # environment by calling @USERDOMAINHOME/setDomainEnv.
    # setDomainEnv initializes or calls commEnv to initialize the following variables:
    # BEA_HOME - The BEA home directory of your WebLogic installation.
    # JAVA_HOME - Location of the version of Java used to start WebLogic
    # Server.
    # JAVA_VENDOR - Vendor of the JVM (i.e. BEA, HP, IBM, Sun, etc.)
    # PATH - JDK and WebLogic directories are added to system path.
    # WEBLOGIC_CLASSPATH
    # - Classpath needed to start WebLogic Server.
    # PATCH_CLASSPATH - Classpath used for patches
    # PATCH_LIBPATH - Library path used for patches
    # PATCH_PATH - Path used for patches
    # WEBLOGIC_EXTENSION_DIRS - Extension dirs for WebLogic classpath patch
    # JAVA_VM - The java arg specifying the VM to run. (i.e.
    # - server, -hotspot, etc.)
    # USER_MEM_ARGS - The variable to override the standard memory arguments
    # passed to java.
    # PRODUCTION_MODE - The variable that determines whether Weblogic Server is started in production mode.
    # POINTBASE_HOME - Point Base home directory.
    # POINTBASE_CLASSPATH
    # - Classpath needed to start PointBase.
    # Other variables used in this script include:
    # SERVER_NAME - Name of the weblogic server.
    # JAVA_OPTIONS - Java command-line options for running the server. (These
    # will be tagged on to the end of the JAVA_VM and
    # MEM_ARGS)
    # For additional information, refer to the WebLogic Server Administration
    # Console Online Help(http://e-docs.bea.com/wls/docs92/ConsoleHelp/startstop.html).
    # Call setDomainEnv here.
    DOMAIN_HOME="/home/oracle/ocsgCourse/domains/labDomain"
    . ${DOMAIN_HOME}/bin/setDomainEnv.sh $*
    SAVE_JAVA_OPTIONS="${JAVA_OPTIONS}"
    SAVE_CLASSPATH="${CLASSPATH}"
    # Start PointBase
    PB_DEBUG_LEVEL="0"
    if [ "${POINTBASE_FLAG}" = "true" ] ; then
         ${WL_HOME}/common/bin/startPointBase.sh -port=${POINTBASE_PORT} -debug=${PB_DEBUG_LEVEL} -console=false -background=true -ini=${DOMAIN_HOME}/pointbase.ini >"${DOMAIN_HOME}/pointbase.log" 2>&1
    fi
    JAVA_OPTIONS="${SAVE_JAVA_OPTIONS}"
    SAVE_JAVA_OPTIONS=""
    CLASSPATH="${SAVE_CLASSPATH}"
    SAVE_CLASSPATH=""
    trap 'stopAll' 1 2 3 15
    if [ "${PRODUCTION_MODE}" = "true" ] ; then
         WLS_DISPLAY_MODE="Production"
    else
         WLS_DISPLAY_MODE="Development"
    fi
    if [ "${WLS_USER}" != "" ] ; then
         JAVA_OPTIONS="${JAVA_OPTIONS} -Dweblogic.management.username=${WLS_USER}"
    fi
    if [ "${WLS_PW}" != "" ] ; then
         JAVA_OPTIONS="${JAVA_OPTIONS} -Dweblogic.management.password=${WLS_PW}"
    fi
    CLASSPATH="${CLASSPATH}${CLASSPATHSEP}${MEDREC_WEBLOGIC_CLASSPATH}"
    echo "."
    echo "."
    echo "JAVA Memory arguments: ${MEM_ARGS}"
    echo "."
    echo "WLS Start Mode=${WLS_DISPLAY_MODE}"
    echo "."
    echo "CLASSPATH=${CLASSPATH}"
    echo "."
    echo "PATH=${PATH}"
    echo "."
    echo "***************************************************"
    echo "* To start WebLogic Server, use a username and *"
    echo "* password assigned to an admin-level user. For *"
    echo "* server administration, use the WebLogic Server *"
    echo "* console at http://hostname:port/console *"
    echo "***************************************************"
    # Set up IP Migration related variables.
    # Set interface name.
    if [ "${Interface}" != "" ] ; then
         IFNAME="${Interface}"
    else
         IFNAME=""
    fi
    # Set IP Mask.
    if [ "${NetMask}" != "" ] ; then
         IPMASK="${NetMask}"
    else
         IPMASK=""
    fi
    # Perform IP Migration if SERVER_IP is set by node manager.
    if [ "${SERVER_IP}" != "" ] ; then
         ${WL_HOME}/common/bin/wlsifconfig.sh -addif "${IFNAME}" "${SERVER_IP}" "${IPMASK}"
    fi
    # START WEBLOGIC
    echo "starting weblogic with Java version:"
    ${JAVA_HOME}/bin/java ${JAVA_VM} -version
    if [ "${WLS_REDIRECT_LOG}" = "" ] ; then
         echo "Starting WLS with line:"
         echo "${JAVA_HOME}/bin/java ${JAVA_VM} ${MEM_ARGS} ${JAVA_OPTIONS} -Dweblogic.Name=${SERVER_NAME} -Djava.security.policy=${WL_HOME}/server/lib/weblogic.policy ${PROXY_SETTINGS} ${SERVER_CLASS}"
         ${JAVA_HOME}/bin/java ${JAVA_VM} ${MEM_ARGS} ${JAVA_OPTIONS} -Dweblogic.Name=${SERVER_NAME} -Djava.security.policy=${WL_HOME}/server/lib/weblogic.policy ${PROXY_SETTINGS} ${SERVER_CLASS}
    else
         echo "Redirecting output from WLS window to ${WLS_REDIRECT_LOG}"
         ${JAVA_HOME}/bin/java ${JAVA_VM} ${MEM_ARGS} ${JAVA_OPTIONS} -Dweblogic.Name=${SERVER_NAME} -Djava.security.policy=${WL_HOME}/server/lib/weblogic.policy ${PROXY_SETTINGS} ${SERVER_CLASS} >"${WLS_REDIRECT_LOG}" 2>&1
    fi
    stopAll
    popd
    # Exit this script only if we have been told to exit.
    if [ "${doExitFlag}" = "true" ] ; then
         exit
    fi
    888stopManagedWeblogic.sh :
    #!/bin/sh
    # WARNING: This file is created by the Configuration Wizard.
    # Any changes to this script may be lost when adding extensions to this configuration.
    # --- Start Functions ---
    usage()
         echo "You must have a value for SERVER_NAME either set as an environment variable or the first parameter on the command-line."
         echo "ADMIN_URL defaults to t3://localhost:7001 if not set as an environment variable or the second command-line parameter."
         echo "USER_NAME and PASSWORD are required for shutting the server down when running in production mode:"
         echo "Usage: $1 {SERVER_NAME} {ADMIN_URL} {USER_NAME} {PASSWORD}"
         echo "for example:"
         echo "%1 managedserver1 t3://localhost:7001 weblogic weblogic"
    # --- End Functions ---
    # This script is used to stop a managed WebLogic Server for the domain in
    # the current working directory. This script reads in the SERVER_NAME and
    # ADMIN_URL as positional parameters, sets the SERVER_NAME variable, then
    # calls the startWLS.cmd script under ${WL_HOME}/server/bin.
    # Other variables that startWLS takes are:
    # WLS_USER - cleartext user for server startup
    # WLS_PW - cleartext password for server startup
    # JAVA_OPTIONS - Java command-line options for running the server. (These
    # will be tagged on to the end of the JAVA_VM)
    # JAVA_VM - The java arg specifying the VM to run. (i.e. -server,
    # -hotspot, etc.)
    # For additional information, refer to the WebLogic Server Administration
    # Guide (http://e-docs.bea.com/wls/docs92/adminguide)
    # Set SERVER_NAME and ADMIN_URL, they must by specified before starting
    # a managed server, detailed information can be found at
    # http://e-docs.bea.com/wls/docs92/adminguide
    if [ "$1" = "" ] ; then
         if [ "${SERVER_NAME}" = "" ] ; then
              usage %0
              exit
         fi
    else
         SERVER_NAME="$1"
         export SERVER_NAME
         shift
    fi
    if [ "$1" = "" ] ; then
         if [ "${ADMIN_URL}" = "" ] ; then
    ADMIN_URL="t3://localhost:8001"
              export ADMIN_URL
         fi
    else
         ADMIN_URL="$1"
         export ADMIN_URL
         shift
    fi
    DOMAIN_HOME="/home/oracle/ocsgCourse/domains/labDomain"
    ${DOMAIN_HOME}/bin/stopWebLogic.sh $1 $2
    999stopWebLogic.sh :
    #!/bin/sh
    # WARNING: This file is created by the Configuration Wizard.
    # Any changes to this script may be lost when adding extensions to this configuration.
    if [ "$1" != "" ] ; then
         userID="username='$1',"
         shift
    else
         if [ "${userID}" != "" ] ; then
              userID="username='${userID}',"
         fi
    fi
    if [ "$1" != "" ] ; then
         password="password='$1',"
         shift
    else
         if [ "${password}" != "" ] ; then
              password="password='${password}',"
         fi
    fi
    # set ADMIN_URL
    if [ "$1" != "" ] ; then
         ADMIN_URL="$1"
         shift
    else
         if [ "${ADMIN_URL}" = "" ] ; then
    ADMIN_URL="t3://localhost:8001"
         fi
    fi
    # Call setDomainEnv here because we want to have shifted out the environment vars above
    DOMAIN_HOME="/home/oracle/ocsgCourse/domains/labDomain"
    . ${DOMAIN_HOME}/bin/setDomainEnv.sh
    echo "connect(${userID} ${password} url='${ADMIN_URL}',adminServerName='${SERVER_NAME}')" >"shutdown.py"
    echo "shutdown('${SERVER_NAME}','Server')" >>"shutdown.py"
    echo "exit()" >>"shutdown.py"
    echo "Stopping Weblogic Server..."
    ${JAVA_HOME}/bin/java ${JAVA_OPTIONS} weblogic.WLST shutdown.py 2>&1
    echo "Done"
    exit

    This forum is about iAS. For weblogic go to: WebLogic Server - General

Maybe you are looking for

  • Error when assigning Service Team to Incident

    When trying to assign a service team that I created to an incident I receive the message stating: Diagnosis A search help should be executed for a UI partner field with partner function category 0016. For that partner function category a corrsponding

  • Encore Will not open with Quicktime 7.75.80.95 update

    Encore will not open after I installed Quicktime v. 7.75.80.95. After I uninstall QuickTime Encore works, but other programs still need Qt to be able to run properly. What gives? Specs: Windows 7 64 Sp1 Adobe CC Encore CS6

  • Action and Query-String in HTTP Adapter

    Hi, I am doing an IDOC -> SAP PI -> HTTP scenario HTTP application is external party (using Party). I have to build the URL Dynamically; so I use Dynamic Configuration in Message Mapping. The URL format (from help.sap.com) is http://<hostname:port>/<

  • Adding Attachments To eMail?

    Goal is to respond to Craig's List job ads via email. Need to compose a message containing: a) the coded email response address in the To field, b) text responding to the specific ad, and c) a PDF of a resume. The PDF currently exists only as an atta

  • Developing on 1.4.2 but corporate s/w requires 1.3

    I'm currently developing a system using Java version 1.4.2_04, but my company's travel expense accounting software requires 1.3.x. Is there a way that I can keep both versions on my system without causing problems on either end?