Custom authenticaion provider in WebLogic Administration Portal

Hi all,
I'm trying to integrate a custom authentication provider in WL Administration Portal. Our users (i.e. administrators) need to be able to easily define Visitor Entitlements.
The goal is to present administrators with a user interface just like the one presented to you when you go to Users, Groups & Roles -> Visitor Entitlements -> <Any Role> -> Add Groups to role
with the DefaultAuthenticator.
I already implemented these interfaces in my authentication provider:
weblogic.management.commo.StandardInterface weblogic.management.security.authentication.AuthenticatorMBean weblogic.management.security.authentication.GroupMemberListerMBean weblogic.management.security.authentication.UserReaderMBean weblogic.management.security.authentication.GroupRemoverMBean weblogic.management.security.authentication.MemberGroupListerMBean
However, the Portal Administration Console only allows Predicate Entry, but does not display a Hierarchy Tree.
Do I have to supply the classes doing the actual rendering myself, or do I just miss a required interface in my authentication provider?
Anyone who can help me with that?
I had this already posted in weblogic.developer.interest.portal, however that might have been the wrong place, so I'm cross-posting this item here.
Cheers,
Christian

Hi All,
Found the reason for the exception. I was implementing the generated the CustomAuthenticatorImpl class (generated through WebLogic MBeanMaker utility) as the provider class by implementing the AuthenticationProvider interface. Keeping them separate solved the issue.
Able to create the jar without any issues and also no error or exception after restart.
Thanks.

Similar Messages

  • How to remove custom authentication provider in weblogic server 11g

    Hi ,
    I am trying to remove the custom authentication provider in weblogic server 11g, It disappears when i delete it from list of authentication providers. But upon server restart it appears again.
    Documentation for 10g says delete it from service administration but i couldn't find one in 11g. Please help me in removing the custom authentication provider
    Thanks
    Sandeep

    You can try editing the config.xml file and removing it there. (Re: After provider reorder I cannot login admin server console
    If you are referring to a jar file - custom authenticators are usually placed in the <middleware-home>wlserver_10.3/server/lib/mbeantypes/ directory.

  • Administration Portal user and group managent performace issue

    Hi
    I have implemented a custom IPlanet LDAP authentication provider which provides
    a realization for the needed authentication, group and user management interfaces
    (UserReader, UserEditor, GroupReader, GroupEditor).
    The authentication provider itself seems to work fine, but I think I found a possible
    performance problem in the WebLogic Administration Portal, when I studied the
    authentication framework by remote debugging. Response times (with just one simultaneous
    user) are quite long (over 8 seconds) with 40 groups on the same hierarchy level
    on the Users, Groups and Roles tree. I'm developing with P4 processor and 1 Gb
    ram (512 Mb allocated for WLS)
    After little debugging I found out that every time a node in the group tree is
    dlicked isMember() method of the authentication provider gets called n * (n -1)
    times, where n is the number of visible groups in the hierachy tree. '
    What happens is that for each group, the membership of all the other visible groups
    is checked by the isMember(group, member, recursive), method call. Even the usage
    of a membership cache in this point didn't speed up the rendering noticeably.
    By placing a break point in the isMember() method and studying the call stack,
    one can see that all the isMember() calls are made during the rendering performed
    by the ControlTreeWalker. For example if there is 40 groups visible in the tree,
    the isMember() method gets called 1600 times. This seems quite heavy. With a
    small number of groups per hierarchy level this problem might not be serious,
    but in case where there would be over 30 000 customer companies using the portal
    and each having their own user groups, it could be an issue.
    The problem does not occur with WebLogic console and browsing of groups and users
    (using the same authentication provider) is fast with it. When a user is selected
    from the user list and the Groups tab is checked, the Possible Groups and Current
    Groups list boxes will get populated. When debugging this sequence, one can see
    that only the listGroups() method of the authentication provider is called once
    per list box and the order of method calls is of order n (rather than n^2 which
    is the case with the Administrator Portal).
    Has anyone had similar problems with Administrator Portal's performance?
    Ville

    Ville,
    You're correct about the performance degradation issue. This is being
    addressed in SP2.
    Thanks,
    Phil
    "Ville" <[email protected]> wrote in message
    news:[email protected]...
    >
    Hi
    I have implemented a custom IPlanet LDAP authentication provider whichprovides
    a realization for the needed authentication, group and user managementinterfaces
    (UserReader, UserEditor, GroupReader, GroupEditor).
    The authentication provider itself seems to work fine, but I think I founda possible
    performance problem in the WebLogic Administration Portal, when I studiedthe
    authentication framework by remote debugging. Response times (with justone simultaneous
    user) are quite long (over 8 seconds) with 40 groups on the same hierarchylevel
    on the Users, Groups and Roles tree. I'm developing with P4 processor and1 Gb
    ram (512 Mb allocated for WLS)
    After little debugging I found out that every time a node in the grouptree is
    dlicked isMember() method of the authentication provider gets called n *(n -1)
    times, where n is the number of visible groups in the hierachy tree. '
    What happens is that for each group, the membership of all the othervisible groups
    is checked by the isMember(group, member, recursive), method call. Eventhe usage
    of a membership cache in this point didn't speed up the renderingnoticeably.
    >
    By placing a break point in the isMember() method and studying the callstack,
    one can see that all the isMember() calls are made during the renderingperformed
    by the ControlTreeWalker. For example if there is 40 groups visible inthe tree,
    the isMember() method gets called 1600 times. This seems quite heavy.With a
    small number of groups per hierarchy level this problem might not beserious,
    but in case where there would be over 30 000 customer companies using theportal
    and each having their own user groups, it could be an issue.
    The problem does not occur with WebLogic console and browsing of groupsand users
    (using the same authentication provider) is fast with it. When a user isselected
    from the user list and the Groups tab is checked, the Possible Groups andCurrent
    Groups list boxes will get populated. When debugging this sequence, onecan see
    that only the listGroups() method of the authentication provider is calledonce
    per list box and the order of method calls is of order n (rather than n^2which
    is the case with the Administrator Portal).
    Has anyone had similar problems with Administrator Portal's performance?
    Ville

  • Custom authorization provider for WL7 problem (not getting all parameters from ContextHandler)

    I'm implementing a custom authorization provider for WebLogic 7.
    In my Access Decision isAccessAllowed method I need to check values of
    the parameters passed to an EJB method. Now, if an EJB method I have
    two parameters of the same type, for example int, when I get
    ContextElement array from ContextHandler and iterate through it to get
    names and values of the parameters I get the same value (value of the
    first int parameter) from both ContextElement's.
    Here is the code:
    String [] names = ch.getNames();
    for (int i = 0; i < names.length; i++)
    String name = names;
    System.out.println("name = " + name);//here it gets array of
    Strings, which contains two parameter names: "int","int",
    which are the types of EJB method parameters
    ContextElement[] ces= ch.getValues(names);
    for (int j = 0; j < ces.length; j++)
         ContextElement ce = ces[j];
         System.out.println(ce.getName()+ " = " + ce.getValue());
    //here if the value of the first int was 2 and the second 0,
    it would get 2 from both ContextElements (each of ContextElements will
    have name "int"
    If I try this with method parameters of different types, for example
    int with value 2 and long with value 0, then this code work fine -
    first ContextEleement has name int and value 2 and the second has name
    long and value 0.
    Thanks,
    -Oleg Kozlov.

    I'm implementing a custom authorization provider for WebLogic 7.
    In my Access Decision isAccessAllowed method I need to check values of
    the parameters passed to an EJB method. Now, if an EJB method I have
    two parameters of the same type, for example int, when I get
    ContextElement array from ContextHandler and iterate through it to get
    names and values of the parameters I get the same value (value of the
    first int parameter) from both ContextElement's.
    Here is the code:
    String [] names = ch.getNames();
    for (int i = 0; i < names.length; i++)
    String name = names;
    System.out.println("name = " + name);//here it gets array of
    Strings, which contains two parameter names: "int","int",
    which are the types of EJB method parameters
    ContextElement[] ces= ch.getValues(names);
    for (int j = 0; j < ces.length; j++)
         ContextElement ce = ces[j];
         System.out.println(ce.getName()+ " = " + ce.getValue());
    //here if the value of the first int was 2 and the second 0,
    it would get 2 from both ContextElements (each of ContextElements will
    have name "int"
    If I try this with method parameters of different types, for example
    int with value 2 and long with value 0, then this code work fine -
    first ContextEleement has name int and value 2 and the second has name
    long and value 0.
    Thanks,
    -Oleg Kozlov.

  • Custom Security Provider impossible to remove the MBean Jar File

    Hi,
    I am currently developping a custom security provider for Weblogic. I
    have deploy my Mbean File Jar on a remote server weblogic running on
    solaris. NO authentication provider for this security provider has
    been defined in the console, it means there is no link with this
    security provider. Nevertheless, when I remove the MJF the server
    crashes when starting:
    <...>
    <May 21, 2003 3:37:08 PM CEST> <Critical> <WebLogicServer> <000364>
    <Server failed during initialization.
    Exception:weblogic.management.configuration.ConfigurationException: -
    with nested exception:
    [javax.management.MBeanException: Commo type:
    be.fgov.minfin.ccff.security.provider.CCFFSimpleSampleAuthenticator is
    not loaded. Checks MJFs.]
    javax.management.MBeanException: Commo type:
    be.fgov.minfin.ccff.security.provider.CCFFSimpleSampleAuthenticator is
    not loaded. Checks MJFs.
    at weblogic.management.commo.CommoModelMBean.load(CommoModelMBean.java:588)
    at weblogic.management.commo.Commo.initInstances(Commo.java:241)
    at weblogic.management.commo.Commo.init(Commo.java:125)
    at weblogic.management.AdminServerAdmin.initializeCommo(AdminServerAdmin.java:477)
    at weblogic.management.AdminServerAdmin.initialize(AdminServerAdmin.java:108)
    at weblogic.t3.srvr.T3Srvr.initialize1(T3Srvr.java:659)
    at weblogic.t3.srvr.T3Srvr.initialize(T3Srvr.java:589)
    at weblogic.t3.srvr.T3Srvr.run(T3Srvr.java:277)
    at weblogic.Server.main(Server.java:32)
    <...>
    I have been looking through all the config file where the MJF
    (removed) could be linked but I did not find anything.
    I am really confused because with my local weblogic running on
    win2000, there is no problem to remove this MJF.
    Thx in advance,
    tiggy

    Tiggy,
    Remove the userConfig directory under your domain directory. That should
    fix the problem.
    Thanks,
    ~satya
    Tiggy wrote:
    Hi,
    I am currently developping a custom security provider for Weblogic. I
    have deploy my Mbean File Jar on a remote server weblogic running on
    solaris. NO authentication provider for this security provider has
    been defined in the console, it means there is no link with this
    security provider. Nevertheless, when I remove the MJF the server
    crashes when starting:
    <...>
    <May 21, 2003 3:37:08 PM CEST> <Critical> <WebLogicServer> <000364>
    <Server failed during initialization.
    Exception:weblogic.management.configuration.ConfigurationException: -
    with nested exception:
    [javax.management.MBeanException: Commo type:
    be.fgov.minfin.ccff.security.provider.CCFFSimpleSampleAuthenticator is
    not loaded. Checks MJFs.]
    javax.management.MBeanException: Commo type:
    be.fgov.minfin.ccff.security.provider.CCFFSimpleSampleAuthenticator is
    not loaded. Checks MJFs.
    at weblogic.management.commo.CommoModelMBean.load(CommoModelMBean.java:588)
    at weblogic.management.commo.Commo.initInstances(Commo.java:241)
    at weblogic.management.commo.Commo.init(Commo.java:125)
    at weblogic.management.AdminServerAdmin.initializeCommo(AdminServerAdmin.java:477)
    at weblogic.management.AdminServerAdmin.initialize(AdminServerAdmin.java:108)
    at weblogic.t3.srvr.T3Srvr.initialize1(T3Srvr.java:659)
    at weblogic.t3.srvr.T3Srvr.initialize(T3Srvr.java:589)
    at weblogic.t3.srvr.T3Srvr.run(T3Srvr.java:277)
    at weblogic.Server.main(Server.java:32)
    <...>
    I have been looking through all the config file where the MJF
    (removed) could be linked but I did not find anything.
    I am really confused because with my local weblogic running on
    win2000, there is no problem to remove this MJF.
    Thx in advance,
    tiggy

  • Security Exception while accessing Administration Portal Page

    Hi all
    I am getting following exception while trying to access the login page of WebLogic Administration Portal. Please help me out
    Error 500--Internal Server Error
    java.security.AccessControlException: access denied (java.io.FilePermission C:\bea\weblogic81\samples\domains\portal\portalServer\.wlnotdelete\EJBCompilerCache\-w3xmqrhp3amn\com\bea\p13n\usermgmt\profile\ProfileFactory.class read)
         at java.security.AccessControlContext.checkPermission(AccessControlContext.java:269)
         at java.security.AccessController.checkPermission(AccessController.java:401)
         at java.lang.SecurityManager.checkPermission(SecurityManager.java:524)
         at java.lang.SecurityManager.checkRead(SecurityManager.java:863)
         at java.io.File.exists(File.java:678)
         at weblogic.utils.classloaders.ClasspathClassFinder.getSourcesInternal(ClasspathClassFinder.java:311)
         at weblogic.utils.classloaders.ClasspathClassFinder.getSource(ClasspathClassFinder.java:266)
         at weblogic.utils.classloaders.MultiClassFinder.getSource(MultiClassFinder.java:80)
         at weblogic.utils.classloaders.MultiClassFinder.getSource(MultiClassFinder.java:69)
         at weblogic.utils.classloaders.CodeGenClassFinder.getSource(CodeGenClassFinder.java:30)
         at weblogic.utils.classloaders.MultiClassFinder.getClassSource(MultiClassFinder.java:61)
         at weblogic.utils.classloaders.CodeGenClassFinder.getClassSource(CodeGenClassFinder.java:24)
         at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:383)
         at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:182)
         at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
         at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
         at weblogic.utils.classloaders.GenericClassLoader.loadClass(GenericClassLoader.java:224)
         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
         at com.bea.p13n.servlets.PortalServletFilter.doFilter(PortalServletFilter.java:266)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6724)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
         at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3764)
         at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2644)
         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
    Thanks

    Well, have you tried the obvious to add the following permission to your web server's policy file?
    grant "file:<wherever my servlet resides>\myservlet.jar" {
    permission java.io.FilePermission "c:\j2sdk1.4.1\jre\lib\javax.comm.properties", "write,delete";
    }

  • Cannot Start Weblogic Server After adding  Custom Authentication Provider

    Hi,
    I implemented a Custom authentication provider and configured it wih Weblogic 10.3 application server. Although I successfully added Authentication provider, I couldn't restart my server. I used MBeanMaker utility to package my Authentication provider and login module. Although the MBean Utility signalled some warnings and severe messages, it successfully packaged the files. When I look at the config.xml file after adding he authenticator it just adds three lines
    ( <sec:authentication-provider>
    <sec:name>STOREDPROCEDURE</sec:name>
    </sec:authentication-provider>
    ) Although there are some other attributes of the authenticator.
    Please advice.
    Here is some stack trace.
    Best Regards,
    Salim
    com.bea.common.engine.ServiceInitializationException: com.bea.common.engine.SecurityServiceRuntimeException: [Security:097533]SecurityProvider service class name for STOREDPROCEDURE is not specified.
    at com.bea.common.engine.internal.ServiceEngineImpl.findOrStartService(ServiceEngineImpl.java:365)
    at com.bea.common.engine.internal.ServiceEngineImpl.findOrStartService(ServiceEngineImpl.java:315)
    at com.bea.common.engine.internal.ServiceEngineImpl.lookupService(ServiceEngineImpl.java:257)
    at com.bea.common.engine.internal.ServicesImpl.getService(ServicesImpl.java:72)
    at weblogic.security.service.internal.WLSIdentityServiceImpl.initialize(Unknown Source)
    at weblogic.security.service.CSSWLSDelegateImpl.initializeServiceEngine(Unknown Source)
    at weblogic.security.service.CSSWLSDelegateImpl.initialize(Unknown Source)
    at weblogic.security.service.CommonSecurityServiceManagerDelegateImpl.InitializeServiceEngine(Unknown Source)
    at weblogic.security.service.CommonSecurityServiceManagerDelegateImpl.initializeRealm(Unknown Source)
    at weblogic.security.service.CommonSecurityServiceManagerDelegateImpl.loadRealm(Unknown Source)
    at weblogic.security.service.CommonSecurityServiceManagerDelegateImpl.initializeRealms(Unknown Source)
    at weblogic.security.service.CommonSecurityServiceManagerDelegateImpl.initialize(Unknown Source)
    at weblogic.security.service.SecurityServiceManager.initialize(Unknown Source)
    at weblogic.security.SecurityService.start(SecurityService.java:141)
    at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    com.bea.common.engine.SecurityServiceRuntimeException: [Security:097533]SecurityProvider service class name for STOREDPROCEDURE is not specified.
    at com.bea.common.security.internal.legacy.service.SecurityProviderImpl.init(SecurityProviderImpl.java:47)
    at com.bea.common.engine.internal.ServiceEngineImpl.findOrStartService(ServiceEngineImpl.java:363)
    at com.bea.common.engine.internal.ServiceEngineImpl.findOrStartService(ServiceEngineImpl.java:315)
    at com.bea.common.engine.internal.ServiceEngineImpl.lookupService(ServiceEngineImpl.java:257)
    at com.bea.common.engine.internal.ServicesImpl.getService(ServicesImpl.java:72)
    at weblogic.security.service.internal.WLSIdentityServiceImpl.initialize(Unknown Source)
    at weblogic.security.service.CSSWLSDelegateImpl.initializeServiceEngine(Unknown Source)
    at weblogic.security.service.CSSWLSDelegateImpl.initialize(Unknown Source)
    at weblogic.security.service.CommonSecurityServiceManagerDelegateImpl.InitializeServiceEngine(Unknown Source)
    at weblogic.security.service.CommonSecurityServiceManagerDelegateImpl.initializeRealm(Unknown Source)
    at weblogic.security.service.CommonSecurityServiceManagerDelegateImpl.loadRealm(Unknown Source)
    at weblogic.security.service.CommonSecurityServiceManagerDelegateImpl.initializeRealms(Unknown Source)
    at weblogic.security.service.CommonSecurityServiceManagerDelegateImpl.initialize(Unknown Source)
    at weblogic.security.service.SecurityServiceManager.initialize(Unknown Source)
    at weblogic.security.SecurityService.start(SecurityService.java:141)
    at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    ####<Feb 3, 2009 12:22:42 AM EET> <Error> <Security> <localhost.localdomain> <DefaultServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1233613362036> <BEA-090870> <The realm "myrealm" failed to be loaded: weblogic.security.service.SecurityServiceException: com.bea.common.engine.ServiceInitializationException: com.bea.common.engine.SecurityServiceRuntimeException: [Security:097533]SecurityProvider service class name for STOREDPROCEDURE is not specified..
    weblogic.security.service.SecurityServiceException: com.bea.common.engine.ServiceInitializationException: com.bea.common.engine.SecurityServiceRuntimeException: [Security:097533]SecurityProvider service class name for STOREDPROCEDURE is not specified.
    at weblogic.security.service.CSSWLSDelegateImpl.initializeServiceEngine(Unknown Source)
    at weblogic.security.service.CSSWLSDelegateImpl.initialize(Unknown Source)
    at weblogic.security.service.CommonSecurityServiceManagerDelegateImpl.InitializeServiceEngine(Unknown Source)
    at weblogic.security.service.CommonSecurityServiceManagerDelegateImpl.initializeRealm(Unknown Source)
    at weblogic.security.service.CommonSecurityServiceManagerDelegateImpl.loadRealm(Unknown Source)
    at weblogic.security.service.CommonSecurityServiceManagerDelegateImpl.initializeRealms(Unknown Source)
    at weblogic.security.service.CommonSecurityServiceManagerDelegateImpl.initialize(Unknown Source)
    at weblogic.security.service.SecurityServiceManager.initialize(Unknown Source)
    at weblogic.security.SecurityService.start(SecurityService.java:141)
    at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    com.bea.common.engine.ServiceInitializationException: com.bea.common.engine.SecurityServiceRuntimeException: [Security:097533]SecurityProvider service class name for STOREDPROCEDURE is not specified.
    at com.bea.common.engine.internal.ServiceEngineImpl.findOrStartService(ServiceEngineImpl.java:365)
    at com.bea.common.engine.internal.ServiceEngineImpl.findOrStartService(ServiceEngineImpl.java:315)
    at com.bea.common.engine.internal.ServiceEngineImpl.lookupService(ServiceEngineImpl.java:257)
    at com.bea.common.engine.internal.ServicesImpl.getService(ServicesImpl.java:72)
    at weblogic.security.service.internal.WLSIdentityServiceImpl.initialize(Unknown Source)
    at weblogic.security.service.CSSWLSDelegateImpl.initializeServiceEngine(Unknown Source)
    at weblogic.security.service.CSSWLSDelegateImpl.initialize(Unknown Source)

    You need to make sure that you nuke the whole directory that you are specifying to the MBean marker generator. For example, I use the following command to generate the provider jar file.
    java -Dfiles=$PRJROOT/ERModel/classes -DMDF=$PRJROOT/ERModel/classes/MyCustomAuthenticator.xml -DMJF=$PRJROOT/ERModel/custom-auth-provider.jar -DtargetNameSpace=http://xmlns.oracle.com/oracleas/schema/11/adf/sampleapp/weblogic/providers -DpreserveStubs=true -DcreateStubs=true weblogic.management.commo.WebLogicMBeanMaker1c
    I need to nuke the directory in the -Dfile option i.e. 'rm -rf $PRJROOT/ERModel/classes/' each time I generate the jar file. If you don't, the jar file generates without any error but you will get a runtime exception.

  • Custom Authentication Provider and User Manage like SQLAuthenticator, How?

    Hi everyone,
    I faced a problem with login function of my portal (Webcenter Application). The Problem is:
    - Allow the users logging in by user that store in another system. I must communicate using low level of socket. This really is not a problem.
    - If user logged in, for first time of logging in, i must store them in some identity store (Maybe tables database).
    - View Users in Weblogic Console. To do that, i known that i must implemeted something that i dont what that are.
    Here are my work:
    - I Created a Custom Authentication Provider. And configuration in Admin Console. But i don't know what are that i should implementing to View user & group in Admin Console.
    - I Cannot logging in: After i created simple application for testing, i cannot logging in even i tested with SQLAuthenticator Provider and original DefaultProvider. In Logging Console, I saw every I Printed In The Code of Login Module.
    Here are my Code:
    <?xml version="1.0" ?>
    <MBeanType Name = "OrkitVASPortal" DisplayName = "OrkitVASPortal"
               Package = "orkit"
               Extends = "weblogic.management.security.authentication.Authenticator"
               PersistPolicy = "OnUpdate">
        <MBeanAttribute
            Name        = "ProviderClassName"
            Type        = "java.lang.String"
            Writeable   = "false"
            Default     = "&quot;orkit.OrkitVASPortalProviderImpl&quot;"
    />
        <MBeanAttribute
            Name        = "Description"
            Type        = "java.lang.String"
            Writeable   = "false"
            Default     = "&quot;WebLogic Simple Sample Audit Provider&quot;"
    />
        <MBeanAttribute
            Name        = "Version"
            Type        = "java.lang.String"
            Writeable   = "false"
            Default     = "&quot;1.0&quot;"
    />
        <MBeanAttribute
            Name        = "LogFileName"
            Type        = "java.lang.String"
            Default     = "&quot;SimpleSampleAuditor.log&quot;"
    />
    </MBeanType>
    package orkit;
    import java.util.HashMap;
    import javax.security.auth.login.AppConfigurationEntry;
    import javax.security.auth.login.AppConfigurationEntry.LoginModuleControlFlag;
    import weblogic.management.security.ProviderMBean;
    import weblogic.security.provider.PrincipalValidatorImpl;
    import weblogic.security.spi.*;
    public final class OrkitVASPortalProviderImpl implements AuthenticationProviderV2 {
        private String description;
        private LoginModuleControlFlag controlFlag;
        public OrkitVASPortalProviderImpl() {
            System.out.println("The Orkit VASPortal Provider Implemented!!!!!");
        @Override
        public IdentityAsserterV2 getIdentityAsserter() {
            return null;
        // Our mapping of users to passwords/groups, instead of being in LDAP or in a
        // database, is represented by a HashMap of MyUserDetails objects..
        public class MyUserDetails {
            String pw;
            String group;
            // We use this to represent the user's groups and passwords
            public MyUserDetails(String pw, String group) {
                this.pw = pw;
                this.group = group;
            public String getPassword() {
                return pw;
            public String getGroup() {
                return group;
        // This is our database
        private HashMap userGroupMapping = null;
        public void initialize(ProviderMBean mbean, SecurityServices services) {
            System.out.println("The Orkit VASPortal Provider is intializing......");
            OrkitVASPortalMBean myMBean = (OrkitVASPortalMBean) mbean;
            description = myMBean.getDescription() + "\n" + myMBean.getVersion();
            System.err.println("#In realm:" + myMBean.getRealm().wls_getDisplayName());
            // We would typically use the realm name to find the database
            // we want to use for authentication. Here, we just create one.
            userGroupMapping = new HashMap();
            userGroupMapping.put("a", new MyUserDetails("passworda", "g1"));
            userGroupMapping.put("b", new MyUserDetails("passwordb", "g2"));
            userGroupMapping.put("system", new MyUserDetails("12341234",
                    "Administrators"));
            String flag = myMBean.getControlFlag();
            if (flag.equalsIgnoreCase("REQUIRED")) {
                controlFlag = LoginModuleControlFlag.REQUIRED;
            } else if (flag.equalsIgnoreCase("OPTIONAL")) {
                controlFlag = LoginModuleControlFlag.OPTIONAL;
            } else if (flag.equalsIgnoreCase("REQUISITE")) {
                controlFlag = LoginModuleControlFlag.REQUISITE;
            } else if (flag.equalsIgnoreCase("SUFFICIENT")) {
                controlFlag = LoginModuleControlFlag.SUFFICIENT;
            } else {
                throw new IllegalArgumentException("Invalid control flag " + flag);
        public AppConfigurationEntry getLoginModuleConfiguration() {
            HashMap options = new HashMap();
            options.put("usermap", userGroupMapping);
            System.out.println("UserMap: " + options);
            return new AppConfigurationEntry(
                    "orkit.OrkitVASPortalLoginModule",
                    controlFlag, options);
        public String getDescription() {
            return description;
        public PrincipalValidator getPrincipalValidator() {
            return new PrincipalValidatorImpl();
        public AppConfigurationEntry getAssertionModuleConfiguration() {
            return null;
    //    public IdentityAsserter getIdentityAsserter() {
    //        return null;
        public void shutdown() {
    * To change this template, choose Tools | Templates
    * and open the template in the editor.
    package orkit;
    import orkit.OrkitVASPortalProviderImpl;
    import java.io.IOException;
    import java.util.*;
    import javax.security.auth.Subject;
    import javax.security.auth.callback.*;
    import javax.security.auth.login.*;
    import javax.security.auth.spi.LoginModule;
    import weblogic.security.principal.WLSGroupImpl;
    import weblogic.security.principal.WLSUserImpl;
    * This login module will be called by our Authentication Provider. It assumes
    * that the option, usermap, will be passed which contains the map of users to
    * passwords and groups.
    public class OrkitVASPortalLoginModule implements LoginModule {
        private Subject subject;
        private CallbackHandler callbackHandler;
        private HashMap userMap;
        // Authentication status
        private boolean loginSucceeded;
        private boolean principalsInSubject;
        private Vector principalsBeforeCommit = new Vector();
        public void initialize(Subject subject, CallbackHandler callbackHandler,
                Map sharedState, Map options) {
            this.subject = subject;
            this.callbackHandler = callbackHandler;
            // Fetch user/password map that should be set by the authenticator
            userMap = (HashMap) options.get("usermap");
         * Called once after initialize to try and log the person in
        public boolean login() throws LoginException {
            // First thing we do is create an array of callbacks so that
            // we can get the data from the user
            Callback[] callbacks;
            callbacks = new Callback[2];
            callbacks[0] = new NameCallback("username: ");
            callbacks[1] = new PasswordCallback("password: ", false);
            try {
                callbackHandler.handle(callbacks);
            } catch (IOException eio) {
                throw new LoginException(eio.toString());
            } catch (UnsupportedCallbackException eu) {
                throw new LoginException(eu.toString());
            String username = ((NameCallback) callbacks[0]).getName();
            System.out.println("Username: " + username);
            char[] pw = ((PasswordCallback) callbacks[1]).getPassword();
            String password = new String(pw);
            System.out.println("PASSWORD: " + password);
            if (username.length() > 0) {
                if (!userMap.containsKey(username)) {
                    throw new FailedLoginException("Authentication Failed: Could not find user:" + username);
                }else{
                    System.out.println("Contstainded Username");
                String realPassword = ((OrkitVASPortalProviderImpl.MyUserDetails) userMap.get(username)).getPassword();
                if (realPassword == null || !realPassword.equals(password)) {
                    throw new FailedLoginException("Authentication Failed: Password incorrect for user" + username);
                }else{
                    System.out.println("Everyitng OKIE");
            } else {
                // No Username, so anonymous access is being attempted
            loginSucceeded = true;
            // We collect some principals that we would like to add to the user
            // once this is committed.
            // First, we add his username itself
            principalsBeforeCommit.add(new WLSUserImpl(username));
            // Now we add his group
            principalsBeforeCommit.add(new WLSGroupImpl(((OrkitVASPortalProviderImpl.MyUserDetails) userMap.get(username)).getGroup()));
            return loginSucceeded;
        public boolean commit() throws LoginException {
            if (loginSucceeded) {
                subject.getPrincipals().removeAll(principalsBeforeCommit);
                principalsInSubject = true;
                return true;
            } else {
                return false;
        public boolean abort() throws LoginException {
            if (principalsInSubject) {
                subject.getPrincipals().removeAll(principalsBeforeCommit);
                principalsInSubject = false;
            return true;
        public boolean logout() throws LoginException {
            return true;
    }and OrkitVASPortalMBean & OrkitVASPortalImpl class created by MBeanMaker tool.
    Can someome help.
    Thanks in advance!

    Hi ,
    SQLAuthenticator is not yet supported with UCM 11g due to some JPS Provider limitations .
    Currently there is an Enhancement request for this .
    Thanks
    Srinath

  • Problem Deploying Custom Transformation Provider to Remote System

    Hello Experts,
    I have successfully created a custom XML Transformation Provider/transformer and deployed it to my local development system and to a remote sandbox system. We are using NWDI and the transformation provider is within the context of a DC.  However, I am deploying to both my local dev and the remote sandbox systems using the u201CQuick PAR Uploadu201D in NWDS.
    After deploying the same PAR to both my local portal and the remote sandbox systems I can see the new service is deployed in both portals (System Administation -> Support -> Runtime -> etc..).  I can also see the service registered successfully in the portal registryu2014again, in both systems.
    Everything works fine on my local dev when I run code to retrieve and apply the custom transformer to source XML.  The new transformer is also available when creating an XML iView.   However, I cannot retrieve or use the new transformer (u201Cno such transformeru201D errors) using the same code on the remote sandbox system.  Also, the new transformer is not available when using the XML iView wizard.
    It seems the custom transformation provider is deploying successfully on the remote system, but the transformer is not.
    Both systems are ostensibly identical, NW 7.0 EP SPS14.  The credentials Iu2019m using when performing the Quick PAR Upload have Administrator/Super Admin Role privileges.  (I even tried uploading the PAR directly into the portal using the Admin Console to see if that made a differenceu2026it did not).
    Any ideas why a transformer would not be available after a custom transformation provider deploys without any apparent errors to the remote system?
    Thanks for your time!

    Hi,
    I presume this issue is not that common.
    Any ideas on where to look (logs) for results after a PAR is deployed to the server?  I do not see any errors in the defaultTrace related to the deployment and I've looked through other logs, too.  In any case, the "custom" transformation provider service appears in the portal, but I still don't see the tranformer itself.
    Thanks again,
    Dave

  • Building an Admin Console Extension for a Custom Security Provider

    I am looking for an example or a description how to build an Administration Console extension for a custom Authentication Provider.
    Especially the creation page for the provider is interesting because I am not able to create and register the required Authentication Provider MBean.
    The call “mbeanHome.getMBeanServer().createMBean(className,objectname)” always throws the following Exception “javax.management.ReflectionException: The MBean class could not be loaded by the default loader repository”
    Even if I try the class “weblogic.security.providers.authentication.IPlanetAuthenticator”, that is part of the bea distribution, the same exception is thrown.
    It seams that the Problem has something to do with class loaders?
    When I use the standard admin console pages to create and configure my provider everything works fine.
    The only example “kennedy0208.zip” I found in the net does not deal with the creation of the MBean.
    It only customizes the edit pages for the provider and at that point the MBean has already been created by the standard admin pages.
    Maybe the author discovered the same Problems and gave up!?
    What makes me wondering is that I have to put my MBean Classes to my console extension war file to be able to import the packages in my jsp.
    If I not put the classes to my war the compiler throws an exception because he can’t resolve the package.
    Because I moved my provider implementation jar to the directory “WLHOME\server\lib\mbeantypes” as described in the bea documentation it should run without putting the classes to the war!?!
    I am very surprised that the bea documentation does not provide any example about this topic.

    Found it. Cut and paste error. I still had one of their example class
    names in my code. Oops.

  • OSB Custom Report Provider Sample - in Eclilpse

    I am writing a custom report provider in OSB based on the example here: http://ias.us.oracle.com/portal/page?_pageid=33,2462026&_dad=portal&_schema=PORTAL
    I downloaded that and compiled it fine using ant.
    Now I am trying to bring the code into Eclipse and modify the custom report provider for my needs.
    I can't jar files to add to my project to resolve the following imports:
    import org.apache.xmlbeans.XmlOptions;
    import org.apache.xmlbeans.XmlObject;
    import org.apache.xmlbeans.XmlTokenSource;
    import com.bea.wli.reporting.ReportingDataHandler;
    import com.bea.wli.reporting.MessagecontextDocument;
    I looked at the build.xml and this is what it has in the compile target:
    <target name="compile">
    <echo message=">>>>>> compile >>>>>>"/>
    <echo message="debug = ${debug}, optimize = ${optimize}, deprecation = ${deprecation}"/>
         <javac srcdir="${custom.report.provider.src.dir}"
    destdir="${build.custom.report.provider.dir.classes}"
              classpath="${sb.lib.common.dir}/reporting-api.jar
              :${sb.lib.dir}/alertfwk.jar"
    deprecation="${deprecation}"
    debug="${debug}"
    optimize="${optimize}"
    source="1.5"/>
    <copy file="${custom.report.provider.dir}/custom_provider.properties"
              todir="${build.custom.report.provider.dir.classes}/com/bea/alsb/fileprovider"
    overwrite="true"/>
    <echo message=">>>>>> Done compile >>>>>>"/>
    </target>
    I think that means it's using these:
    classpath="${sb.lib.common.dir}/reporting-api.jar
              :${sb.lib.dir}/alertfwk.jar"
    but I cannot find those in my OSB directories.
    I'm sure this is something simple, but I'm a little confused right now as to how the ant build works when I can't find these jars. Glad it does but I was hoping to work on this and compile my version in eclipse.
    any advice or insight is appreciated.

    Thanks. It resolved the com.bea.wli.reporting.* imports fine once I added the alsb.jar.
    I had to add the weblogic jar from my D:\Oracle\Middleware\wlserver_10.3\server\lib for it to resolve the imports for XmlBeans and the imports in the ApplicationListener.java file.
    Now everything compiles fine in Eclipse.

  • OEPE can't launch server that uses custom Security provider

    I recently migrated a Weblogic 8.1 server that we had a custom security provider for, to 10.3.2. It works fine when started with the startWeblogic.cmd file but when I try to start it using OEPE in eclipse it starts fine and runs fine but OEPE reports that
    "Unable to validate WebLogic domain.Please make sure the running WebLogic instance is an Administration Server"
    When I look at the Error Log it appears that it thinks one of my custom security classes is not found. But the server is running fine, so it is fine, it's on the classpath via the use of the EXT_PREPEND_CLASSPATH environment variable.
    I am running Weblogic 10.3.2 on Windows XP using eclipse Ganymede 3.5.2 and OEPE version 1.5.0.201003170852
    Here's the Error Log:
    eclipse.buildId=
    java.version=1.6.0_03
    java.vendor=Sun Microsystems Inc.
    BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_US
    Framework arguments: -product org.eclipse.epp.package.jee.product
    Command-line arguments: -os win32 -ws win32 -arch x86 -product org.eclipse.epp.package.jee.product
    This is a continuation of log file C:\tools\eclipse-workspaces\galileo\.metadata\.bak_3.log
    Created Time: 2010-05-12 14:04:01.549
    Error
    Thu May 13 14:25:11 EDT 2010
    Server Weblogic 10.3 failed to start.
    eclipse.buildId=
    java.version=1.6.0_03
    java.vendor=Sun Microsystems Inc.
    BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_US
    Framework arguments: -product org.eclipse.epp.package.jee.product
    Command-line arguments: -os win32 -ws win32 -arch x86 -product org.eclipse.epp.package.jee.product
    This is a continuation of log file C:\tools\eclipse-workspaces\galileo\.metadata\.bak_3.log
    Created Time: 2010-05-12 14:04:01.549
    Error
    Thu May 13 14:25:10 EDT 2010
    Another server (or another process) is running on the same TCP/IP port '7001'.
    eclipse.buildId=
    java.version=1.6.0_03
    java.vendor=Sun Microsystems Inc.
    BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_US
    Framework arguments: -product org.eclipse.epp.package.jee.product
    Command-line arguments: -os win32 -ws win32 -arch x86 -product org.eclipse.epp.package.jee.product
    This is a continuation of log file C:\tools\eclipse-workspaces\galileo\.metadata\.bak_3.log
    Created Time: 2010-05-12 14:04:01.549
    Warning
    Thu May 13 14:25:10 EDT 2010
    Unable to validate WebLogic domain.
    Please make sure the running WebLogic instance is an Administration Server
    eclipse.buildId=
    java.version=1.6.0_03
    java.vendor=Sun Microsystems Inc.
    BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_US
    Framework arguments: -product org.eclipse.epp.package.jee.product
    Command-line arguments: -os win32 -ws win32 -arch x86 -product org.eclipse.epp.package.jee.product
    This is a continuation of log file C:\tools\eclipse-workspaces\galileo\.metadata\.bak_3.log
    Created Time: 2010-05-12 14:04:01.549
    Error
    Thu May 13 14:25:10 EDT 2010
    java.io.IOException
         at weblogic.management.remote.common.ClientProviderBase.makeConnection(ClientProviderBase.java:187)
         at weblogic.management.remote.common.ClientProviderBase.newJMXConnector(ClientProviderBase.java:81)
         at javax.management.remote.JMXConnectorFactory.newJMXConnector(Unknown Source)
         at javax.management.remote.JMXConnectorFactory.connect(Unknown Source)
         at oracle.eclipse.tools.weblogic.server.internal.WlsJMXHelper.createConnector(WlsJMXHelper.java:269)
         at oracle.eclipse.tools.weblogic.server.internal.WlsJMXHelper.connectToJMX(WlsJMXHelper.java:76)
         at oracle.eclipse.tools.weblogic.server.internal.WlsJMXHelper.getDomainAttribute(WlsJMXHelper.java:139)
         at oracle.eclipse.tools.weblogic.server.internal.WlsJ2EEDeploymentHelper.validateRemote(WlsJ2EEDeploymentHelper.java:1687)
         at oracle.eclipse.tools.weblogic.server.internal.WeblogicServerBehaviour.validateRemote(WeblogicServerBehaviour.java:2646)
         at oracle.eclipse.tools.weblogic.server.internal.ServerWatcher.runOnce(ServerWatcher.java:574)
         at oracle.eclipse.tools.weblogic.server.internal.ServerWatcher.run(ServerWatcher.java:482)
         at java.lang.Thread.run(Unknown Source)
    Caused by: javax.naming.CommunicationException [Root exception is weblogic.rjvm.PeerGoneException: ; nested exception is:
         weblogic.utils.NestedException: java.lang.AssertionError: Exception creating response stream]
         at weblogic.jndi.internal.ExceptionTranslator.toNamingException(ExceptionTranslator.java:74)
         at weblogic.jndi.internal.WLContextImpl.translateException(WLContextImpl.java:452)
         at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:408)
         at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:393)
         at javax.naming.InitialContext.lookup(Unknown Source)
         at weblogic.management.remote.common.ClientProviderBase.makeConnection(ClientProviderBase.java:170)
         ... 11 more
    Caused by: weblogic.rjvm.PeerGoneException: ; nested exception is:
         weblogic.utils.NestedException: java.lang.AssertionError: Exception creating response stream
         at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:234)
         at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:348)
         at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:259)
         at weblogic.jndi.internal.ServerNamingNode_1032_WLStub.lookup(Unknown Source)
         at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:405)
         ... 14 more
    Caused by: weblogic.utils.NestedException: java.lang.AssertionError: Exception creating response stream
         at weblogic.rjvm.RJVMImpl.gotExceptionReceiving(RJVMImpl.java:957)
         at weblogic.rjvm.ConnectionManager.gotExceptionReceiving(ConnectionManager.java:1030)
         at weblogic.rjvm.MsgAbbrevJVMConnection.gotExceptionReceiving(MsgAbbrevJVMConnection.java:459)
         at weblogic.rjvm.t3.MuxableSocketT3.hasException(MuxableSocketT3.java:327)
         at weblogic.socket.SocketMuxer.deliverExceptionAndCleanup(SocketMuxer.java:784)
         at weblogic.socket.SocketMuxer.deliverHasException(SocketMuxer.java:724)
         at weblogic.socket.JavaSocketMuxer.processSockets(JavaSocketMuxer.java:359)
         at weblogic.socket.SocketReaderRequest.run(SocketReaderRequest.java:29)
         at weblogic.work.ExecuteRequestAdapter.execute(ExecuteRequestAdapter.java:21)
         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:145)
         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:117)
    Caused by: java.lang.AssertionError: Exception creating response stream
         at weblogic.rjvm.MsgAbbrevJVMConnection.readMsgAbbrevs(MsgAbbrevJVMConnection.java:238)
         at weblogic.rjvm.MsgAbbrevInputStream.init(MsgAbbrevInputStream.java:173)
         at weblogic.rjvm.MsgAbbrevJVMConnection.dispatch(MsgAbbrevJVMConnection.java:439)
         at weblogic.rjvm.t3.MuxableSocketT3.dispatch(MuxableSocketT3.java:322)
         at weblogic.socket.BaseAbstractMuxableSocket.dispatch(BaseAbstractMuxableSocket.java:298)
         at weblogic.socket.SocketMuxer.readReadySocketOnce(SocketMuxer.java:915)
         at weblogic.socket.SocketMuxer.readReadySocket(SocketMuxer.java:844)
         at weblogic.socket.JavaSocketMuxer.processSockets(JavaSocketMuxer.java:335)
         ... 4 more
    Caused by: java.lang.ClassNotFoundException: com.companyname.security.principal.CompanyNameWebLogicPrincipal
         at java.net.URLClassLoader$1.run(Unknown Source)
         at java.security.AccessController.doPrivileged(Native Method)
         at java.net.URLClassLoader.findClass(Unknown Source)
         at java.lang.ClassLoader.loadClass(Unknown Source)
         at java.lang.ClassLoader.loadClass(Unknown Source)
         at java.lang.ClassLoader.loadClassInternal(Unknown Source)
         at java.lang.Class.forName0(Native Method)
         at java.lang.Class.forName(Unknown Source)
         at java.io.ObjectInputStream.resolveClass(Unknown Source)
         at java.io.ObjectInputStream.readNonProxyDesc(Unknown Source)
         at java.io.ObjectInputStream.readClassDesc(Unknown Source)
         at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
         at java.io.ObjectInputStream.readObject0(Unknown Source)
         at java.io.ObjectInputStream.readObject(Unknown Source)
         at java.util.LinkedList.readObject(Unknown Source)
         at sun.reflect.GeneratedMethodAccessor46.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         at java.lang.reflect.Method.invoke(Unknown Source)
         at java.io.ObjectStreamClass.invokeReadObject(Unknown Source)
         at java.io.ObjectInputStream.readSerialData(Unknown Source)
         at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
         at java.io.ObjectInputStream.readObject0(Unknown Source)
         at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
         at java.io.ObjectInputStream.readSerialData(Unknown Source)
         at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
         at java.io.ObjectInputStream.readObject0(Unknown Source)
         at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
         at java.io.ObjectInputStream.defaultReadObject(Unknown Source)
         at weblogic.security.acl.internal.AuthenticatedSubject.readObject(AuthenticatedSubject.java:406)
         at sun.reflect.GeneratedMethodAccessor57.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         at java.lang.reflect.Method.invoke(Unknown Source)
         at java.io.ObjectStreamClass.invokeReadObject(Unknown Source)
         at java.io.ObjectInputStream.readSerialData(Unknown Source)
         at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
         at java.io.ObjectInputStream.readObject0(Unknown Source)
         at java.io.ObjectInputStream.readObject(Unknown Source)
         at weblogic.rjvm.InboundMsgAbbrev.readObject(InboundMsgAbbrev.java:65)
         at weblogic.rjvm.InboundMsgAbbrev.read(InboundMsgAbbrev.java:37)
         at weblogic.rjvm.MsgAbbrevJVMConnection.readMsgAbbrevs(MsgAbbrevJVMConnection.java:227)
         ... 11 more

    I am also facing the same issue.
    i am running my web service program on tomcat. the server is weblogic 9.1. I am trying to invoke the EJBs running on the server from the tomcat.
    i am getting similar exception. anyone got a solution for this ?
    Caused by: weblogic.rjvm.PeerGoneException: ; nested exception is:weblogic.utils.NestedException: java.lang.AssertionError: Exception creating response stream at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:234)
    thanks
    Kiranlal.

  • Custom security provider exception

    Good day, colleagues. I want to raise an old topic.
    I use custom security provider exceptions:
    -AccountExpiredException
    -AccountLockedException
    However, the login() method only captures FailedLoginException
    try
      CallbackHandler pwcall = new weblogic.security.URLCallbackHandler(user, pass.getBytes("UTF-8"));
      subject = weblogic.security.services.Authentication.login(pwcall);
      weblogic.servlet.security.ServletAuthentication.runAs(subject, request);
    catch (javax.security.auth.login.LoginException e) {
      e.printStackTrace();
    javax.security.auth.login.FailedLoginException: [Security:090304]Authentication Failed: User ...
      at weblogic.security.providers.authentication.LDAPAtnLoginModuleImpl.login(LDAPAtnLoginModuleImpl.java:240)
      at com.bea.common.security.internal.service.LoginModuleWrapper$1.run(LoginModuleWrapper.java:110)
      at java.security.AccessController.doPrivileged(Native Method)
    I found similar questions IdentityAssertion custom exception, FailedLoginException asked many years ago for WLS 9.2
    Their solution (wlp.propogate.login.exception.cause=true) does not work for WLS 10.3.
    How to propagate original LoginException?
    Or exception message only.

    I did it! look closely to source code:
    javax.security.auth.login.LoginContext:875
    if (moduleStack[i].entry.getControlFlag() == AppConfigurationEntry.LoginModuleControlFlag.REQUISITE) {
      // if REQUISITE, then immediately throw an exception
      if (methodName.equals(ABORT_METHOD) || methodName.equals(LOGOUT_METHOD)) {
           if (firstRequiredError == null)
                firstRequiredError = le;
      } else {
           throwException(firstRequiredError, le);
    } else if (moduleStack[i].entry.getControlFlag() == AppConfigurationEntry.LoginModuleControlFlag.REQUIRED) {
      // mark down that a REQUIRED module failed
      if (firstRequiredError == null)
           firstRequiredError = le;
    } else {
      // mark down that an OPTIONAL module failed
      if (firstError == null)
           firstError = le;
    javax.security.auth.login.LoginContext:922
    // we went thru all the LoginModules.
    if (firstRequiredError != null) {
      // a REQUIRED module failed -- return the error
      throwException(firstRequiredError, null);
    } else if (success == false && firstError != null) {
      // no module succeeded -- return the first error
      throwException(firstError, null);
    } else...
    I set Control flag: OPTION to DefaultAuth (was REQUIRED)
    and order it after my LoginModule. (restart required!)
    Now I catch my exceptions %)

  • Unable to load your custom module provider's module-factory-class

    I am having a problem while I deploy my application. it gives me following error:
    Unable to load your custom module provider's module-factory-class com.bea.p13n.descriptor.module.ConfigModuleFactory
    Dont know how to resolve it. the class is in p13n_system.jar file, I have added that jar as a library in deployment but still it shows the same error.
    Added it in classpath as well but same error. (Dont know exactly how to add in class path, i have added just in "Start Server" tab's classpath)
    Any help will be greatly appreciated

    Below link might be helpful.
    http://kr.forums.oracle.com/forums/thread.jspa?threadID=1049509&tstart=0
    Regards,
    Anandraj
    http://weblogic-wonders.com/

  • Custom JSP Tags for Weblogic

    Hi,
              I have several questions regarding this topic:
              1) Does Weblogic 5.1 supports Custom Tags ? If so, are there any known
              problems ?
              2) Does Weblogic come with any tag libraries (for loops, if, etc) and where
              can I get them ?
              3) Are there any tag libraries out there (JRun, for example) that have been
              successfully run on Weblogic ?
              Any help would be much appreciated.
              Thanks,
              Jamie
              

    As there seems to be general interest, a link would probably be a great
              help.
              Regards
              Daniel Hoppe
              -----Original Message-----
              From: Michael Girdley [mailto:[email protected]]
              Posted At: Friday, August 25, 2000 8:03 AM
              Posted To: jsp
              Conversation: Custom JSP Tags for Weblogic
              Subject: Re: Custom JSP Tags for Weblogic
              Please see the documentation:
              http://www.weblogic.com/docs51/resources.html
              Michael Girdley
              BEA Systems Inc
              "Jamie" <[email protected]> wrote in message
              news:[email protected]...
              > Update
              > =======
              >
              > Weblogic Portal has some Tag libraries. I've downloaded the trial
              version
              > of
              > the Weblogic Commerce Server. How do I get the tag libraries and use
              them
              > on WL 5.1 ?
              >
              > Answers to original post still wanted
              >
              > Thanks,
              >
              > Jamie
              >
              > Jamie <[email protected]> wrote in message
              > news:[email protected]...
              > > Hi,
              > >
              > > I have several questions regarding this topic:
              > >
              > > 1) Does Weblogic 5.1 supports Custom Tags ? If so, are there any
              known
              > > problems ?
              > >
              > > 2) Does Weblogic come with any tag libraries (for loops, if, etc)
              and
              > where
              > > can I get them ?
              > >
              > > 3) Are there any tag libraries out there (JRun, for example) that
              have
              > been
              > > successfully run on Weblogic ?
              > >
              > >
              > > Any help would be much appreciated.
              > >
              > > Thanks,
              > >
              > > Jamie
              > >
              > >
              >
              >
              

Maybe you are looking for

  • Linking a WEBI report through hyperlink in a webpage using open document

    Hi All, I have a hyper link in a web page which when clicked should open a WEBI report. I created it using the open document feature. Once clicking on the link, InfoView login credential page is displayed. After logging in the report runs. My client

  • Can you have more than one apple id on one mac?

    Also i was wondering if you can create a separate apple id but keep your music/podcasts/audiobooks and transfer them to the new apple id.  Please help

  • New iMac won't let me log in to iTunes

    Hi Hoping someone can help. I have a new iMac that has been fully set up now. When I am trying to log in to the iTunes store I get an error message saying it's "current unavailable at this time, please try later". I also have a Macbook which I can st

  • Invoice not getting created in ECC 6.0

    SRM Classic Scenario 5.0 and ECC 6.0 as backend. ECC6.0 is where all purchase documents are created Started invoice posting from SRM and it gets posted in ECC 6.0. Our FI data is maintained in ECC. When we are trying to create Invoice from SRM and ID

  • Ejb calling ejb, how many threads?

    A few of questions regarding the way WLS threads EJBs: 1. It seems straightforward if I deploy a WLS "application" that's composed of a single EJB. I suppose that the app runs as a thread within the WLS JVM and "pooling" also makes sense. 2. But what