Session property sets
Hi,
How can I update a Session property set from a JSP page?
I can get the properties with the following code:
com.bea.p13n.http.Session s = new com.bea.p13n.http.Session(request.getSession());
out.println(s.getProperty("TestSet", "TestProperty"));
This prints the default TestProperty values but how can I update the same Session property set?
Do I have to use PropertySetManager?
br,
Chris
Hi,
How can I update a Session property set from a JSP page?
I can get the properties with the following code:
com.bea.p13n.http.Session s = new com.bea.p13n.http.Session(request.getSession());
out.println(s.getProperty("TestSet", "TestProperty"));
This prints the default TestProperty values but how can I update the same Session property set?
Do I have to use PropertySetManager?
br,
Chris
Similar Messages
-
Session Property Set not available in Portal Administration Console
We have a Portal Application (WLP 10.0 MP1) that needs to have visitor entitlements applied to allow some customization based upon a Session Property Set. The property set has been defined in Workshop and the .ses file is now included in our Portal EAR file in the /META-INF/data directory. When the EAR is deployed on a local (winXP) domain the property set is then available in the portal admin console and can be used to build entitlements. When the EAR is deployed to our test server (Solaris 10) the property set does not become available in the portal admin console. Both servers are in development mode and already have a previous version of the EAR deployed in streaming mode.
Is there anything obvious that needs to be done to ensure that a property set is enabled when deploying a new EAR?We are actually performing the portal EAR build using maven but are creating the same directory layout as is created by Workshop when a data sync project is used and an EAR exported, i.e. the contents of the data sync project ends up in the EAR /META-INF/data directory.
The mystery here is that the property set correctly deploys in one environment but not in another. I'd really like to know whether there are any particular tricks to the property set deployment and what the deployent process actually does. Could issues with the target environment prevent correct deployment of the property set? -
Session property set not updating in Portal Admin console
Hello,
We have a Portal application running on 10 MP1. Included in the EAR file is a session property set and is correctly stored in the right directory (META-INF/data).
When deployed, I can view our session properties when I try to create some entitlements and expressions. However, we need to update the name of one property and when we redeployed the EAR with an updated session property file, in the Portal Admin console, the session property still has the old name.
This happens on one of our environments, but does not happen on my local machine. On my local machine, when I look at the database, the DATA_SYNC_ITEM table is empty. But on our other environment (where the problem exists), in the database I can see relevant entries for my app and property file in the DATA_SYNC_ITEM table.
Does anyone have any ideas why this table is not populated on my local machine and why I can't seem to update the session property file on my other environment where the table is populated?
Any help would be much appreciated.
Thanks,
JonathanProbably either development mode /prodiction mode differences or differences between deploying as an exploded ear (local) and a compressed ear (in your environment that doesnt work). The easiest way is to propagate the changes from your local to the other environment (you can scope it to just session properties)
http://download.oracle.com/docs/cd/E13155_01/wlp/docs103/prodOps/propToolAdvanced.html -
Updating a session property set
Hi,
How can I update a session property set?
I can get my properties like this: <%= session.getProperty("test_set", "groups")
%>
But how do I update the same set. The documentation does not mention this...
Is it possible to um? I did not get it to work.
But maybe I did something wrong.
<um:getProperty id="getResult" propertySet="test" propertyName="groups_test"/>
The above returned null.
But after updating it with:
<um:setProperty propertySet="test" propertyName="groups_test" value="<%= list
%>" result="setResult"/>
It returned something.
br,
ChrisA correction: It appears that it is being set but, as the pageflow action forwards to the success page the entitlement isn't taking effect until I refresh the page I forward to.
Any ideas on why the entitlement requires a refresh on the forwarded page? -
How to update Session property set.
Hi,
How can I update a session property set?
I can get my properties like this:
<%= session.getProperty("test_set", "groups") %>
But how do I update the same set.
The documentation does not mention this...
br,
ChrisChris wrote:
Hi,
How can I update a session property set?
I can get my properties like this:
<%= session.getProperty("test_set", "groups") %>
But how do I update the same set.
The documentation does not mention this...
br,
ChrisI am not sure what you want, but you can add properties to the session
property set in the EBCC, by adding custom properties. You should then
be able to retrieve them programmatically.
Jalpesh -
Programatic session property set updates
I have created a session property set user.ses
with a property user_type
How do I modify a property from a page flow controller.
session.setAttribute("user_type","value") doesn't seem to have any effect when used with an entitlement role.
I also tried user/user_type as the attribute name.
When I dump the session attributes I don't see a property set called user.
Any help would be appreciated since the documentation doesn't really address how to do this.Thank you, deepshet. Now, it works perfectly.
-
Session/Request Property Sets.
What are the Session and Request property sets used for? And how do I
get at them? The documentation states I can access these via the
Personalization Advisor. There doesn't appear to be a tag nor a method
to access these. Also if I create a Session Property it does not show up
in the HttpSession object.
[chris.jolley.vcf]Hi,
Thanks for your answer.
We are using Portal 4.0 and the com.beasys.commerce.axiom.p13n.jsp.P13NJspBase has
been
deprecated.
I found one solution "hidden" in the p13n examples.
It was in sample.jsp under p13nApp\p13n in the examples directory.
It would be nice if something was mentioned in the documentation
about how to get Session property sets to work.
br,
Chris
Ture Hoefner <[email protected]> wrote:
>
>
Hello Chris,
Do not set and get request and session properties with the
<um:setproperty> and <um:getproperty> tags. Use the methods
JspBase.setSessionValue() and JspBase.getSessionValue() for session values
and HttpRequest.setAttribute() and HttpRequest.getAttribute() for request
properties.
You have to use the JspBase methods for the session values because the
key
is "fixed up" by prepending the name that is registered to the
JspServiceManager or PortalServiceManager servlet for your application.
This allows multiple portals to be served to a client from a single server.
This also means that you cannot use session properties in an application
that does not use the JspServiceManager or PortalServiceManager.
Here is a test JSP that may be registered as a portlet and added to an
example portal. To use it, you must create your session and request
rulesheets (or use existing ones) with the admin tool. You can
create/register the "age" property in the DefaultRequestPropertySet and
in
the DefaultSessionPropertySet using the admin tool. The sample code works
for rulesheets named "request" and "session". Then create a classifier
in
each rulesheet called "middleage" that says something like this:
REQUEST.DefaultRequestPropertySet.age >= 40
and
REQUEST.DefaultRequestPropertySet.age < 65
SESSION.DefaultSessionPropertySet.age >= 40
and
SESSION.DefaultSessionPorpertySet.age < 65
<%@ taglib uri="lib/um_tags.jar" prefix="um" %>
<%@ taglib uri="pz.tld" prefix="pz" %>
<%-- A JSP page that uses the Personalization Advisor (typically
through the pz tags) must extend P13NJspBase --%>
<%@ page extends="com.beasys.commerce.axiom.p13n.jsp.P13NJspBase" %>
<%
/* Put an age in the session. Use the JspBase.setSessionValue() method
so
that the key is "fixed up" by prepending the name registered with
the JspServiceManager
or PortalServiceManager for this application.
This is to allow a single server to service multiple portals. */
Long ageLong = new Long(52);
setSessionValue("age", ageLong, request);
request.setAttribute("age", ageLong);
%>
<%-- Do not use <um:getproperty> and <um:setproperty> tags to get and set
session
properties. Session properties should be set/get with JspBase.setSessionValue()
and
JspBase.getSessionValue(). Request properties should be set/get with
HttpRequest.setAttribute()
and HttpRequest.getAttribute() --%>
<br>
The middleage classifier will run for the session property:
<br>
<pz:div
ruleset="jdbc://com.beasys.commerce.axiom.reasoning.rules.RuleSheetDefinitionHome/session"
rule="middleage" >
<br>
The middle age classifier evaluated to TRUE
<br>
</pz:div>
<br>
The middleage classifier will run for the request property:
<br>
<pz:div
ruleset="jdbc://com.beasys.commerce.axiom.reasoning.rules.RuleSheetDefinitionHome/request"
rule="middleage" >
<br>
The middle age classifier evaluated to TRUE
<br>
</pz:div>
<%
// Clean up the session in case you are testing this over and over
removeSessionValue("age", request);
request.removeAttribute("age");
%>
Ture Hoefner
BEA Systems, Inc.
2590 Pearl St.
Suite 110
Boulder, CO 80302
www.bea.com
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
Hello Chris,
<br> Do not set and get request and session properties with the <um:setproperty>
and <um:getproperty> tags. Use the methods JspBase.setSessionValue()
and JspBase.getSessionValue() for session values and HttpRequest.setAttribute()
and HttpRequest.getAttribute() for request properties.
<br> You have to use the JspBase methods for the session values because
the key is "fixed up" by prepending the name that is registered to the
JspServiceManager or PortalServiceManager servlet for your application.
This allows multiple portals to be served to a client from a single server.
This also means that you cannot use session properties in an application
that does not use the JspServiceManager or PortalServiceManager.
<br> Here is a test JSP that may be registered as a portlet and added
to an example portal. To use it, you must create your session and
request rulesheets (or use existing ones) with the admin tool. You
can create/register the "age" property in the DefaultRequestPropertySet
and in the DefaultSessionPropertySet using the admin tool. The sample
code works for rulesheets named "request" and "session". Then create
a classifier in each rulesheet called "middleage" that says something like
this:
<br>
<p> REQUEST.DefaultRequestPropertySet.age >= 40
<br> and
<br> REQUEST.DefaultRequestPropertySet.age < 65
<p> SESSION.DefaultSessionPropertySet.age >= 40
<br> and
<br> SESSION.DefaultSessionPorpertySet.age < 65
<br>--------------------------------------------------------------------------------------------
<pre><%@ taglib uri="lib/um_tags.jar" prefix="um" %></pre>
<pre><%@ taglib uri="pz.tld" prefix="pz" %></pre>
<pre></pre>
<pre><%-- A JSP page that uses the Personalization Advisor (typically</pre>
<pre> through the pz tags) must extend P13NJspBase
--%></pre>
<pre><%@ page extends="com.beasys.commerce.axiom.p13n.jsp.P13NJspBase"
%></pre>
<pre></pre>
<pre><%</pre>
<pre> /* Put an age in the session. Use the JspBase.setSessionValue()
method so</pre>
<pre> that the key is "fixed up" by
prepending the name registered with the JspServiceManager</pre>
<pre> or PortalServiceManager for this
application.</pre>
<pre> This is to allow a single
server to service multiple portals. */</pre>
<pre> Long ageLong = new Long(52);</pre>
<pre> setSessionValue("age", ageLong, request);</pre>
<pre></pre>
<pre> request.setAttribute("age", ageLong);</pre>
<pre>%></pre>
<pre> </pre>
<pre><%-- Do not use <um:getproperty> and <um:setproperty> tags
to get and set session</pre>
<pre> properties. Session properties should
be set/get with JspBase.setSessionValue() and</pre>
<pre> JspBase.getSessionValue(). Request properties
should be set/get with HttpRequest.setAttribute()</pre>
<pre> and HttpRequest.getAttribute() --%></pre>
<pre> </pre>
<pre><br></pre>
<pre>The middleage classifier will run for the session property:</pre>
<pre><br></pre>
<pre><pz:div</pre>
<pre> ruleset="jdbc://com.beasys.commerce.axiom.reasoning.rules.RuleSheetDefinitionHome/session"</pre>
<pre> rule="middleage" ></pre>
<pre> <br></pre>
<pre> The middle age classifier
evaluated to TRUE</pre>
<pre> <br></pre>
<pre></pz:div></pre>
<pre></pre>
<pre><br></pre>
<pre>The middleage classifier will run for the request property:</pre>
<pre><br></pre>
<pre><pz:div</pre>
<pre> ruleset="jdbc://com.beasys.commerce.axiom.reasoning.rules.RuleSheetDefinitionHome/request"</pre>
<pre> rule="middleage" ></pre>
<pre> <br></pre>
<pre> The middle age classifier
evaluated to TRUE</pre>
<pre> <br></pre>
<pre></pz:div></pre>
<pre> </pre>
<pre></pre>
<pre><%</pre>
<pre> // Clean up the session in case you are testing
this over and over</pre>
<pre> removeSessionValue("age", request);</pre>
<pre> request.removeAttribute("age");</pre>
<pre>%></pre>
<p>
<p>--
<br>Ture Hoefner
<br>BEA Systems, Inc.
<br>2590 Pearl St.
<br>Suite 110
<br>Boulder, CO 80302
<br>www.bea.com
<br> </html> -
Cannot attach User property set within a Rule set
Hi,
I cannot attach a user property set within a rule set. When i create a new
rule set in the tools it doesnt give me a field to attach a User property
set to a rule set. I dont get this.
I am using WLCS 3.2, cloudscape, WL 5.1 SP 6, Win2000.
Any help wud be greatly appreciated.Hello Kapil,
This is a good thing. Allow me to convince you. Prior to WLCS 2.0.1 sp1,
each rule set required that a property set be associated with it. Rules in
that rule set could only use properties from that property set. You could not
write a rule that used properties from multiple property sets. Therefore, it
was impossible to combine user/group, session, and request properties in
rules. It is a good thing that you don't have to associate a property set
with the rule set anymore.
kapil wrote:
Hi,
I cannot attach a user property set within a rule set. When i create a new
rule set in the tools it doesnt give me a field to attach a User property
set to a rule set. I dont get this.
I am using WLCS 3.2, cloudscape, WL 5.1 SP 6, Win2000.
Any help wud be greatly appreciated.--
Ture Hoefner
BEA Systems, Inc.
2590 Pearl St.
Suite 110
Boulder, CO 80302
www.bea.com -
Hello All:
I am looking for a way to deploy a property set file; joedoe.usr to Weblogic Portal 8.1. Has anyone successfully deployed a property set file (including the UUP ejb that uses it) to WebLogic outside of Workshop? If so, can you provide steps to do so?
FYI, I created a property set file and added to my ear in the META-INF directory. When I deploy my ear to Weblogic, I can see my portal application and all the portal resources in the Portal Admin. However, I do not see my "custom" property set when editing a user. My constraint is that my application must not use Workshop to create and deploy.
Thank you,
SouthinHi Deepak:
Thank you for replying to my message. Unfortunately, the example the BEA does not work for me. Yes my corporateProfile.usr is in the data/userprofiles folder where the CustomerProperties.usr resides. My custom ejb that extends extends com.bea.p13n.property.EntityPropertyManager is successfully deployed, however I cannot see the property set that I created in the Portal Admin console.
Attached are my weblogic-ejb-jar.xm and ejb-jar.xml files that I edit after following the instructions for "Deploy a ProfileManager That Can Use the New EntityPropertyManager." Does anyone see something wrong?
------------------------ ejb-jar.xml -------------
<?xml version="1.0"?>
<!DOCTYPE ejb-jar PUBLIC
'-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN'
'http://java.sun.com/dtd/ejb-jar_2_0.dtd' >
<ejb-jar>
<enterprise-beans>
<!-- TrackedAnonymous EJB -->
<entity>
<ejb-name>TrackedAnonymous</ejb-name>
<home>com.bea.p13n.usermgmt.profile.TrackedAnonymousHome</home>
<remote>com.bea.p13n.usermgmt.profile.TrackedAnonymous</remote>
<ejb-class>com.bea.p13n.usermgmt.profile.internal.TrackedAnonymousBean</ejb-class>
<persistence-type>Container</persistence-type>
<prim-key-class>java.lang.String</prim-key-class>
<reentrant>False</reentrant>
<cmp-version>2.x</cmp-version>
<abstract-schema-name>TrackedAnonymousBean</abstract-schema-name>
<cmp-field>
<field-name>anonymousUserId</field-name>
</cmp-field>
<cmp-field>
<field-name>lastVisited</field-name>
</cmp-field>
<primkey-field>anonymousUserId</primkey-field>
<ejb-local-ref>
<description>Reference to TrackedPropertySet EJB</description>
<ejb-ref-name>ejb/TrackedPropertySet</ejb-ref-name>
<ejb-ref-type>Entity</ejb-ref-type>
<local-home>com.bea.p13n.property.TrackedPropertySetHome</local-home>
<local>com.bea.p13n.property.TrackedPropertySet</local>
<ejb-link>TrackedPropertySet</ejb-link>
</ejb-local-ref>
</entity>
<!-- Tracked Property Set EJB -->
<!-- Local interfaces for this one only, because it's referred to only by TrackedAnonymous.
The relationships bewteen these two EJBs are defined in the 'relationships' attribute at
the end of this file. -->
<entity>
<ejb-name>TrackedPropertySet</ejb-name>
<local-home>com.bea.p13n.property.TrackedPropertySetHome</local-home>
<local>com.bea.p13n.property.TrackedPropertySet</local>
<ejb-class>com.bea.p13n.property.internal.TrackedPropertySetBean</ejb-class>
<persistence-type>Container</persistence-type>
<prim-key-class>java.lang.String</prim-key-class>
<reentrant>False</reentrant>
<cmp-version>2.x</cmp-version>
<abstract-schema-name>TrackedPropertySetBean</abstract-schema-name>
<cmp-field>
<field-name>anonymousPropertyId</field-name>
</cmp-field>
<cmp-field>
<field-name>anonymousUserId</field-name>
</cmp-field>
<cmp-field>
<field-name>propertySetName</field-name>
</cmp-field>
<cmp-field>
<field-name>propertyName</field-name>
</cmp-field>
<cmp-field>
<field-name>propertyValue</field-name>
</cmp-field>
<primkey-field>anonymousPropertyId</primkey-field>
<!-- Find all property sets with the same anonymous user id. This gives us all property sets associated with a single
TrackedAnonymous EJB -->
<query>
<query-method>
<method-name>findByAnonymousUserId</method-name>
<method-params>
<method-param>java.lang.String</method-param>
</method-params>
</query-method>
<ejb-ql>SELECT OBJECT (a) FROM TrackedPropertySetBean a WHERE a.anonymousUserId = ?1 </ejb-ql>
</query>
</entity>
<!-- PropertySetManager EJB -->
<session>
<ejb-name>PropertySetManager</ejb-name>
<home>com.bea.p13n.property.PropertySetManagerHome</home>
<remote>com.bea.p13n.property.PropertySetManager</remote>
<ejb-class>com.bea.p13n.property.internal.PropertySetManagerImpl</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
<env-entry>
<env-entry-name>repository/CONTENT</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>com.bea.content.manager.propertysets.PropertySetRepositoryImpl</env-entry-value>
</env-entry>
<!-- following are mappings from file extension to property set type -->
<env-entry>
<env-entry-name>extension/clg</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>CATALOG</env-entry-value>
</env-entry>
<env-entry>
<env-entry-name>extension/evt</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>EVENT</env-entry-value>
</env-entry>
<env-entry>
<env-entry-name>extension/req</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>REQUEST</env-entry-value>
</env-entry>
<env-entry>
<env-entry-name>extension/ses</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>SESSION</env-entry-value>
</env-entry>
<env-entry>
<env-entry-name>extension/usr</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>USER</env-entry-value>
</env-entry>
<!-- the ejb/ContentManagers branch is for the
com.bea.p13n.content.PropertyRepositoryImpl
-->
<ejb-ref>
<ejb-ref-name>ejb/ContentManagers/Document</ejb-ref-name>
<ejb-ref-type>Session</ejb-ref-type>
<home>com.bea.p13n.content.document.DocumentManagerHome</home>
<remote>com.bea.p13n.content.document.DocumentManager</remote>
<!-- FIXME. Eventually need to rework user manager stuff so we can do this. For now, the DocumentManager
is in weblogic-ejb-jar.xml, where it is deployed only if it is referenced.
<ejb-link>wps.jar#DocumentManager</ejb-link> -->
</ejb-ref>
</session>
<!-- EntityPropertyManager EJB -->
<session>
<ejb-name>EntityPropertyManager</ejb-name>
<home>com.bea.p13n.property.EntityPropertyManagerHome</home>
<remote>com.bea.p13n.property.EntityPropertyManager</remote>
<ejb-class>com.bea.p13n.property.internal.EntityPropertyManagerImpl</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
<ejb-ref>
<ejb-ref-name>ejb/PropertySetManager</ejb-ref-name>
<ejb-ref-type>Session</ejb-ref-type>
<home>com.bea.p13n.property.PropertySetManagerHome</home>
<remote>com.bea.p13n.property.PropertySetManager</remote>
<ejb-link>PropertySetManager</ejb-link>
</ejb-ref>
<resource-ref>
<res-ref-name>jdbc/commercePool</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</session>
<!-- Ldap Property Manager
To use this, uncomment it here as well as in weblogic-ejb-jar.xml.
Configure the LDAP connection and settings using the env-entry values (see descriptions below).
Do not forget to uncomment the ejb-link and method-permission tags for the LdapPropertyManager.
An easy way to ensure you don't miss anything is to search for "ldap" (case-insensitive) here AND in
weblogic-ejb-jar.xml. Search from the beginning to the end of the file.
<session>
<ejb-name>LdapPropertyManager</ejb-name>
<home>com.bea.p13n.usermgmt.profile.ldap.LdapPropertyManagerHome</home>
<remote>com.bea.p13n.usermgmt.profile.ldap.LdapPropertyManager</remote>
<ejb-class>com.bea.p13n.usermgmt.profile.ldap.internal.LdapPropertyManagerImpl</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
<env-entry>
<description>Use SSL to connect to ldap server</description>
<env-entry-name>config/useSSL</env-entry-name>
<env-entry-type>java.lang.Boolean</env-entry-type>
<env-entry-value>false</env-entry-value>
</env-entry>
<env-entry>
<description>LDAP Server URL</description>
<env-entry-name>config/serverURL</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>ldap://server.company.com:389</env-entry-value>
</env-entry>
<env-entry>
<description>Principal name to use when connecting to the ldap server (optional).
Anonymous bind will be used if not specified. This entry will be
ignored if config/credentialMBeanName is set below. </description>
<env-entry-name>config/principal</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>uid=admin, ou=Administrators, ou=TopologyManagement, o=NetscapeRoot</env-entry-value>
</env-entry>
<env-entry>
<description>The password of the principal specified above (required if principal set). This
entry is ignored if config/credentialMBeanName is set below.</description>
<env-entry-name>config/principalCredential</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>weblogic</env-entry-value>
</env-entry>
<env-entry>
<description>The name of the Credential MBean in application-config.xml that will
be used to store the principal's username and principal's password. The password
will be stored in an encrypted form. This is the principal/credential used to bind to
the LDAP server. The password will be decrypted before it is used to bind to the
LDAP server.
Using this entry will override anything set for the config/principal and
config/principalCredential. If this entry and config/principal and
config/principalCredential are not specified then anonymous bind will be used.
(this entry is optional)</description>
<env-entry-name>config/credentialMBeanName</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>LdapPropertyManager</env-entry-value>
</env-entry>
<env-entry>
<description> The location(s) of users in the ldap directory.
There can be one or more user DNs. The entries are named like this:
config/userDN
config/userDN-1
config/userDN-2
and they are searched in that order.
If there is only one, then it must be config/userDN
Typical values:
ou=People,o=company.com
ou=People,dc=mycompany,dc=com
</description>
<env-entry-name>config/userDN</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>ou=People,o=company.com</env-entry-value>
</env-entry>
<env-entry>
<description> The location(s) of groups in the ldap directory
There can be one or more group DNs. The entries are named like this:
config/groupDN
config/groupDN-1
config/groupDN-2
and they are searched in that order.
If there is only one, then it must be config/groupDN
Typical values:
ou=Groups,o=company.com
ou=Groups,dc=mycompany,dc=com
</description>
<env-entry-name>config/groupDN</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>ou=Groups,o=company.com</env-entry-value>
</env-entry>
<env-entry>
<description>A boolean to enbable/disable SUBTREE_SCOPE searches for user/group properties
below the userDN(s) and groupDN(s). For example, if this property is true, then you could specify
the "config/userDN" env-entry as ou=People,dc=mycompany,dc=com and users that are in both
ou=PeopleA,ou=People,dc=mycompany,dc=com and in ou=PeopleB,ou=People,dc=mycompany,dc=com
could be used. A getProperty() call would return a value for the first user found in
the specified "config/userDN" or in any branch below it. This boolean also affects
searches for group properties. If multiple userDNs (or groupDNs) are specified then
this SUBTREE_SCOPE will apply to searches starting in all of those specified DNs.
</description>
<env-entry-name>config/objectPropertySubtreeScope</env-entry-name>
<env-entry-type>java.lang.Boolean</env-entry-type>
<env-entry-value>false</env-entry-value>
</env-entry>
<env-entry>
<description>The user attribute to map to a username
If there is only one, then it is applied to all userDNs.
If there is more than one, then they are applied, in order,
to the userDNs. If there is more than one, then the number must
match the number of userDNs.
The entries are named like this:
config/usernameAttribute
config/usernameAttribute-1
config/usernameAttribute-2
and they are used in that order.
If there is only one, then it must be config/usernameAttribute
</description>
<env-entry-name>config/usernameAttribute</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>uid</env-entry-value>
</env-entry>
<env-entry>
<description> The group attribute to map to a group name
If there is only one, then it is applied to all groupDNs.
If there is more than one, then they are applied, in order,
to the groupDNs. If there is more than one, then the number must
match the number of groupDNs.
The entries are named like this:
config/groupnameAttribute
config/groupnameAttribute-1
config/groupnameAttribute-2
and they are used in that order.
If there is only one, then it must be config/groupnameAttribute
</description>
<env-entry-name>config/groupnameAttribute</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>cn</env-entry-value>
</env-entry>
<env-entry>
<description>Flag to specify if LDAP attributes will be determined to be
single value or multi-value via the schema obtained from
the attribute. If false, then the attribute is stored as
multi-valued (a Collection) only if it has more than one value.
Leave false unless you intend to use multi-valued LDAP attributes
that may have only one value. Using true adds overhead to check the
LDAP schema. Also, if you use true beware that most LDAP attributes
are multi-value. For example, iPlanet Directory Server 5.x uses multi-value
for givenName, which you may not expect unless you are familiar with LDAP
schemas.
This flag will apply to property searches for all userDNs and all groupDNs.
</description>
<env-entry-name>config/detectSingleValueFromSchema</env-entry-name>
<env-entry-type>java.lang.Boolean</env-entry-type>
<env-entry-value>false</env-entry-value>
</env-entry>
<env-entry>
<description>Value of the name of the attribute in the LDAP schema that is used to
determine single value or multi-value (RFC2252 uses SINGLE-VALUE)
This attribute in the schema should be true for single value and false or
absent from the schema otherwise.
The value only matters if config/detectSingleValueFromSchema is true.
</description>
<env-entry-name>config/singleValueSchemaAttribute</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>SINGLE-VALUE</env-entry-value>
</env-entry>
<env-entry>
<description> Name for the cache used by the ldap property manager
If you deploy multiple LdapPropertyManager beans, you must set
the caches to different names to avoid collisions.
Defaults to "ldapPropertyCache" if unset.
</description>
<env-entry-name>config/ldapPropertyCacheName</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>ldapPropertyCache</env-entry-value>
</env-entry>
</session>
-->
<!-- Property Set Web Service EJB -->
<session>
<ejb-name>PropertySetWebService</ejb-name>
<home>com.bea.p13n.property.webservice.PropertySetWebServiceHome</home>
<remote>com.bea.p13n.property.webservice.PropertySetWebService</remote>
<ejb-class>com.bea.p13n.property.webservice.internal.PropertySetWebServiceImpl</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
<ejb-ref>
<ejb-ref-name>ejb/PropertySetManager</ejb-ref-name>
<ejb-ref-type>Session</ejb-ref-type>
<home>com.bea.p13n.property.PropertySetManagerHome</home>
<remote>com.bea.p13n.property.PropertySetManager</remote>
<ejb-link>PropertySetManager</ejb-link>
</ejb-ref>
</session>
<!-- RulesManager EJB -->
<session>
<ejb-name>RulesManager</ejb-name>
<home>com.bea.p13n.rules.manager.RulesManagerHome</home>
<remote>com.bea.p13n.rules.manager.RulesManager</remote>
<ejb-class>com.bea.p13n.rules.manager.internal.RulesManagerImpl</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
<env-entry>
<description>
This property will be used by RulesManagerImpl to create an instance of
the RuleSetRepository.
</description>
<env-entry-name>RuleSetRepositoryClassName</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>com.bea.p13n.rules.manager.internal.RuleSetPersistenceManager</env-entry-value>
</env-entry>
</session>
<!-- User Manager EJB -->
<session>
<ejb-name>UserManager</ejb-name>
<home>com.bea.p13n.usermgmt.UserManagerHome</home>
<remote>com.bea.p13n.usermgmt.UserManager</remote>
<ejb-class>com.bea.p13n.usermgmt.internal.UserManagerImpl</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
<!-- ReservedUserNames is used to list all names (case insensitive)
that are restricted: the UserManager will not create users
with these names. The list is comma-delimited.
-->
<!--
<env-entry>
<env-entry-name>ReservedUserNames</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>foo,foo2</env-entry-value>
</env-entry>
-->
<!-- ProtectedUserNames is used to list all names (case insensitive)
that cannot be deleted through the UserManager (or portal tools).
The list is comma-delimited.
-->
<!--
<env-entry>
<env-entry-name>ProtectedUserNames</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>foo,foo2</env-entry-value>
</env-entry>
-->
<!-- The UserManager used programatic security to allow
users to modify their own data (where username == profileName)
or anyone in one of these (administrative) roles.
Used in the methods: setPassword and removeUser.
Other methods can be protected using declarative security.
Should at least include the WebLogic Admin role, if left empty
or mapped to "empty" roles, then no one will be able to admin
user profiles.
Each role listed here should also have a security-role-ref entry below -->
<env-entry>
<env-entry-name>AuthorizedRoles</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>Admin,PortalSystemAdministrator</env-entry-value>
</env-entry>
<env-entry>
<env-entry-name>disallowedUserCharacters</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>*,%</env-entry-value>
</env-entry>
<ejb-ref>
<ejb-ref-name>ejb/UserProfileManager</ejb-ref-name>
<ejb-ref-type>Session</ejb-ref-type>
<home>com.bea.p13n.usermgmt.profile.ProfileManagerHome</home>
<remote>com.bea.p13n.usermgmt.profile.ProfileManager</remote>
<ejb-link>UserProfileManager</ejb-link>
</ejb-ref>
<ejb-ref>
<ejb-ref-name>ejb/ProfileType/WLCS_Customer</ejb-ref-name>
<ejb-ref-type>Session</ejb-ref-type>
<home>com.bea.commerce.ebusiness.customer.CustomerProfileManagerHome</home>
<remote>com.bea.commerce.ebusiness.customer.CustomerProfileManager</remote>
<!-- FIXME. Can't do this without always deploying Customer. Eventually need
to rework user manager stuff so we can do this. For now, the CustomerProfileManager
is in weblogic-ejb-jar.xml, where it is deployed only if it is referenced.
<ejb-link>commerce.jar#CustomerProfileManager</ejb-link> -->
</ejb-ref>
<!-- Security role refs for roles listed in AuthorizedRoles -->
<security-role-ref>
<description>Portal system administrators</description>
<role-name>PortalSystemAdministrator</role-name>
<role-link>PortalSystemAdministrator</role-link>
</security-role-ref>
<security-role-ref>
<description>WLS System administrators</description>
<role-name>Admin</role-name>
<role-link>Admin</role-link>
</security-role-ref>
<resource-ref>
<res-ref-name>jdbc/commercePool</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</session>
<!-- Group Manager EJB -->
<session>
<ejb-name>GroupManager</ejb-name>
<home>com.bea.p13n.usermgmt.GroupManagerHome</home>
<remote>com.bea.p13n.usermgmt.GroupManager</remote>
<ejb-class>com.bea.p13n.usermgmt.internal.GroupManagerImpl</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
<!-- ProtectedGroupNames is used to list all names (case insensitive)
that cannot be deleted through the GroupManager (or portal tools).
The list is comma-delimited.
-->
<env-entry>
<env-entry-name>ProtectedGroupNames</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>Operators,Monitors,Deployers</env-entry-value>
</env-entry>
<ejb-ref>
<ejb-ref-name>ejb/GroupProfileManager</ejb-ref-name>
<ejb-ref-type>Session</ejb-ref-type>
<home>com.bea.p13n.usermgmt.profile.ProfileManagerHome</home>
<remote>com.bea.p13n.usermgmt.profile.ProfileManager</remote>
<ejb-link>GroupProfileManager</ejb-link>
</ejb-ref>
</session>
<!-- Realm Configuration EJB -->
<session>
<ejb-name>RealmConfiguration</ejb-name>
<home>com.bea.p13n.usermgmt.config.RealmConfigurationHome</home>
<remote>com.bea.p13n.usermgmt.config.RealmConfiguration</remote>
<ejb-class>com.bea.p13n.usermgmt.config.internal.RealmConfigurationImpl</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
<ejb-ref>
<ejb-ref-name>ejb/GroupProfileManager</ejb-ref-name>
<ejb-ref-type>Session</ejb-ref-type>
<home>com.bea.p13n.usermgmt.profile.ProfileManagerHome</home>
<remote>com.bea.p13n.usermgmt.profile.ProfileManager</remote>
<ejb-link>GroupProfileManager</ejb-link>
</ejb-ref>
<ejb-ref>
<ejb-ref-name>ejb/UserProfileManager</ejb-ref-name>
<ejb-ref-type>Session</ejb-ref-type>
<home>com.bea.p13n.usermgmt.profile.ProfileManagerHome</home>
<remote>com.bea.p13n.usermgmt.profile.ProfileManager</remote>
<ejb-link>UserProfileManager</ejb-link>
</ejb-ref>
</session>
<!-- User Profile Manager-->
<session>
<ejb-name>UserProfileManager</ejb-name>
<home>com.bea.p13n.usermgmt.profile.ProfileManagerHome</home>
<remote>com.bea.p13n.usermgmt.profile.ProfileManager</remote>
<ejb-class>com.bea.p13n.usermgmt.profile.internal.UserProfileManagerImpl</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
<!-- map all properties in property set ldap to ldap server -->
<env-entry>
<env-entry-name>PropertyMapping/ldap</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>LdapPropertyManager</env-entry-value>
</env-entry>
<!-- map all properties in corporateProfile property set to CorporateProfileManager -->
<env-entry>
<env-entry-name>PropertyMapping/corporateProfile</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>CorporateProfileManager</env-entry-value>
</env-entry>
<!-- The UserProfileManager used programatic security to allow
users to modify their own data (where username == profileName)
or anyone in one of these (administrative) roles.
Used in the methods: deleteProfile, removeProperty,
removeSuccessor, setProperty, and setSuccessor.
Other methods can be protected using declarative security.
Should at least include the WebLogic Admin role, if left empty
or mapped to "empty" roles, then noone will be able to admin
user profiles.
Each role listed here should also have a security-role-ref entry below --> -
Get values from attributes of property sets
Hi!
Anyone know how to obtain values of attributes from property sets? Now I am using directly the EJBs but I would like to use tags (I found <ps:getPropertyNames> but it doesn´t give me the values) Any idea?
Thanks,
GuillermoGuillermo:
I am not sure if this is exactly what you mean but you can get the values of properties with the user management tags <um:getProperty> and <um:getPropertyAsString>. You are correct, though, in that the
<ps:getPropertyNames> tag only returns the names of the properties.
Ted
Guillermo wrote:
Hi!
Anyone know how to obtain values of attributes from property sets? Now I am using directly the EJBs but I would like to use tags (I found <ps:getPropertyNames> but it doesn´t give me the values) Any idea?
Thanks,
Guillermo -
Setting up LDAP for authentication to portal:default property set named "ldap
Hi
I am trying to implement the LDAP authentication to WebLogic Portal .Iam went
thru the docmentation ( http://edocs.bea.com/wlp/docs40/p13ndev/users.htm#1131824).It
mentions using the default property set named "ldap" and deploying ldapprofile.jar.My
quenstion is:
-Is there a way to look into the property using EBCC
- Apart from deploying,configuring the ldapprofile.jar,do I have to do any additional
steps in order to make my portal(say,stockportal) authenticate users from LDAP?
-If a create my own portal,should I create a similar "ldap" property set?If so,how.
Any suggestions/help is appreciated.Thanks
- MikeThanks Dave.
"David Anderson" <[email protected]> wrote:
You should be able to view the property set for LDAP through the EBCC
if you
have the propertysetws.jar installed in your Portal domain. This provides
the ability for the EBCC to retrieve property set information from your
server.
Dave
"mike" <[email protected]> wrote in message
news:[email protected]...
Hi Adrian
Thank you for the pointers.Much appreciate it.However,one questionstill
persists.
What is the significance of the property set "ldap" mentioned in the
document(http://edocs.bea.com/wlp/docs40/p13ndev/users.htm#1131824).Where
does this property set feature vis-a-vis setting up LDAP securityrealm;does it
mater prior to/after the setting up as mentioned in the document pointeryou just
gave .
Is it sufficinet that i follow the procedure to set up the LDAP oris
there more
to post setting,like creating a property set (similar to "ldap" orcloning
it)
apaprt frpom deploying ldapprofile.jar.
Thanks.
- Mike
"Adrian Fletcher" <[email protected]> wrote:
Mike,
The documentation that covers LDAP authentication is listed under
Weblogic
Server rather than Weblogic Portal.
See Configuring the LDAP Security Realm in Managing Security
(http://e-docs.bea.com/wls/docs61////adminguide/cnfgsec.html#1071872)
Also take a look at the FAQ - Why can't I boot WebLogic Server whenusing
the LDAP Security Realm?
(http://e-docs.bea.com/wls/docs61//faq/security.html#25833)
Hope this helps,
Sincerely,
Adrian.
Adrian Fletcher.
Senior Software Engineer,
BEA Systems, Inc.
Boulder, CO.
email: [email protected]
"mike" <[email protected]> wrote in message
news:[email protected]...
Hi
I am trying to implement the LDAP authentication to WebLogic Portal.Iam
went
thru the docmentation
http://edocs.bea.com/wlp/docs40/p13ndev/users.htm#1131824).It
mentions using the default property set named "ldap" and deployingldapprofile.jar.My
quenstion is:
-Is there a way to look into the property using EBCC
- Apart from deploying,configuring the ldapprofile.jar,do I have
to
do any
additional
steps in order to make my portal(say,stockportal) authenticate usersfrom
LDAP?
-If a create my own portal,should I create a similar "ldap" propertyset?If so,how.
Any suggestions/help is appreciated.Thanks
- Mike -
User Property Sets / UUP -- not showing up
Hi. We are having problems getting any portal user property sets to show up in any environment other than our dev boxes. We are running 10.2. Our environment consists of our dev workstations, a dev server in 'development' mode, a stage server in 'production' mode, and a production server in 'production' mode.
On our development boxes, we see the following property sets from the portal admin:
Groupspace
CustomerProperties
BusinessUserProperties
BusinessEmployeeProperties
The latter 2 are our UUP property sets. As I said, these sets appear on our dev boxes, but from what I understand, that is expected because the EAR is exploded when published on a dev box.
Consultants developed much of this portal application for us, including the uup property sets, and they are backing away and not offering any help in this matter. They simply said to use the propegation tools. I used the propegation tool to merge my dev box inventory and our development server inventory, and the differences did indicate the 4 property sets listed above. I selected to add only those 4 property sets to the dev server, exported the merged inventory, and exported it to our dev server with no errors. However, still no property sets showed up. I then pulled down another inventory from our dev server, and it indicated that it still did not have the property sets. I repeated this cycle once more to no avail.
Things that are confusing to me are:
1) The 'Groupspace' and 'CustomerProperties' sets appear to be portal default property sets. Wouldn't they be expected to exist in all environments?
2) I thought that I read if the server you are deploying the EAR to is in 'development' mode, then the property sets should be moved over when deploying the EAR normally. I may be wrong about this as I am on information overload trying to learn these portal aspects under a time crunch.
3) Where in the portal database are the propertysets themselved defined? I can see the 'PROPERTY_KEY' and 'PROPERTY_VALUE' tables which handle storing the user properties themselves, but I don't see any tables which would define a property set.
Thanks in advance for any insights to this issue. It is making my week really tough.1st, I recommend posting in the WebLogic Portal forum:
WebLogic Portal
2ndly, I recommend opening a support case to get assistance if you are under a time crunch. -
Setting Multiple values in property set using java API
Hello All,
I want to set the properties of a profile in a property set using java API provided
in package p13n. The property can have multiple values. When I try to add the
property using ProfileManager.setProperty() method. But every time I do it this
way, it replaces the earlier value of property and not added. This, I can achieve
using portalTools but I want to use the API for user registration on the site.
I hope the query is clear.
Waiting for a response,
Thanks in advance,
ShrinivasYou need to use java.util.ArrayList.
First cast the existing value into ArrayList using getProperty method,
change values in the ArrayList and then put them back with setProperty
method.
Regards,
Michael Goldverg
"Shrinivas Rao" <[email protected]> wrote in message
news:3d64e7d9$[email protected]..
>
Hello All,
I want to set the properties of a profile in a property set using java APIprovided
in package p13n. The property can have multiple values. When I try to addthe
property using ProfileManager.setProperty() method. But every time I do itthis
way, it replaces the earlier value of property and not added. This, I canachieve
using portalTools but I want to use the API for user registration on thesite.
I hope the query is clear.
Waiting for a response,
Thanks in advance,
Shrinivas -
Maximim Number of process and session can set in oracle 10g
my os is 32 bit windows and ram size is 10gb and i am using AWE_WINDOW_MEMORY setting and now my sga is 6 gb.what would be Maximim Number of process and session can set in oracle 10g database
mithun wrote:
my os is 32 bit windows and ram size is 10gb and i am using AWE_WINDOW_MEMORY setting and now my sga is 6 gb.what would be Maximim Number of process and session can set in oracle 10g databaseThe maximum number of sessions is controlled by your database's SESSIONS parameter. This value is most derived from the PROCESSES parameter. You cannot exceed this number of sessions unless you raise the parameter value.
If your database is configured to handle enough sessions, then Oracle can literally handle thousands of simultaneous connections, provided your database server also has enough resources to handle this number of connections. You will want to implement Oracle's Shared Server connections so that multiple connections share a pool of processes on the database server. This minimizes the resource consumption used by the connections.
Read the following document as well.
http://download.oracle.com/docs/cd/B19306_01/server.102/b14231/manproc.htm
Thanks -
ODI-01266: Agent {0} detected Session as stale session and set to error
Hi
I am a beginner in odi
I scheduled a package to run . but this error came up :" ODI-01266: Agent {0} detected Session as stale session and set to error status"
what is this error and what should i do???
thanx
mediCleaning Stale Sessions
Stale sessions are sessions that are incorrectly left in a running state after an agent or repository crash.
The Agent that started a session automatically detects when this session becomes stale and changes it to Error status. You can manually request specific Agents to clean stale sessions in Operator Navigator or Topology Navigator.
To clean stale sessions manually:
Do one of the following:
From the Operator Navigator toolbar menu, select Clean Stale Sessions.
In Topology Navigator, from the Physical Architecture accordion, select an Agent, right-click and select Clean Stale Sessions.
The Clean Stale Sessions Dialog opens
In the Clean Stale Sessions Dialog specify the criteria for cleaning stale sessions:
From the list, select the Agents that will clean their stale sessions.
Select Clean all Agents if you want all Agents to clean their stale sessions.
From the list, select the Work Repositories you want to clean.
Select Clean all Work Repositories if you want to clean stale sessions in all Work Repositories.
Click Clean to start the cleaning process.
Maybe you are looking for
-
Creative cloud app, updating cc products windows 8.1
Hi, i recently upgraded to windows 8.1and reinstalled my adobe cc products, however i have noted that everytime i update using the creative cloud app nothing happens, it detects some of my products needs updating and when i click update and it verif
-
Listening multipe devices through TCP/IP Listener
Hello How can I listen multiple devices at the same port on TCP/IP. for example there are 10 to 100 devices that sends their data each after 5 secs. How can I listen to all of them at once? I designed the logic but when I am trying to send the data t
-
Sap Bpc 10 website Grey homepage
Hello everyone, Some users report a strange error when they try to logon on our Sap bpc website. I tried to use suggestion from a similar problem with White Page : SAP BPC 10 web Blank, I also tried to update flash player, delete history and temporar
-
Recommend CODEC for AVI imports
I am converting my PPT files with animation to AVI so I can import them into Captivate. I am using a Full Uncompressed AVI and have had less than stellar success (see previous post of "Animation Truncated"). I can create these AVI files with a variet
-
Hello Experts, I am facing one EP issue...its like once the user logs in to the portal through SSO...he is not able to see any menu on the left side of the page. Actually there is a Detailed Navigation Tab on Left side which contains links to other s