How to configure OrgChart Viewer in MSS 5.0/6.0

Hi All,
I have a question about the iView Orgchart viewer in MSS. My understanding is that this iView will trigger another 3rd party software that charts out the org chart for the manager. Is that correct?
May I know any examples of the 3rd party charting software to link to this iView if my above assumption is correct?
Also, if so, may I know whether there are any good reference/ configuration guides on this iView as I have been trying to locate docs on this but to no avail except the Business Package for Manager Self-Service document 50.4 supplied in SAP website.
Many thanks in advance. (I am a newbie in HR module and you can assume that I know nothing much except usage of the common txns.)

Hi,
To implement a viewer for the Org Chart, you need a 3rd Party software.
Here is an excerpt from the OSS reply I got, Hope this helps:
To implement Additional/Alternative iviews like Organizational Chart
Viewer (page 854 of Business Package for MSS 50.4), you can utilize this iview with a third party vendor that has been certified by SAP as a
partner for the SAP XML interface (HR-OCI).
In regards to HR-OCI integaration/configuration, you can also refer to
http://www.sdn.sap.
com/irj/sdn/sdnservices/icc?rid=/webcontent/uuid/b8aa0b62-0501-0010-32b8-9a0d1a88ca0a
By the way Gerardo, the 3rd Party Software Providers are:
Nakisa - Software partner
Aquire (previously: TimeVision) - Software partner
HumanConcepts - Software partner
Hope all of you find this information useful

Similar Messages

  • How to configure and view the log file

    Hi all,
    I   want to view the log file generated on the server when an application is deployed to see the trace of an exception.
    But i dont know how to access it.
    Please if anybody can help me.
    Thanx in advance.
    Regards,
    Neetu

    HI,
    You can see the log file from
    Sys admin->support->portal runtime->log viewer
    See the time and date given in the top of each file name,
    in the search field enter u r portal ID and search to find your error.
    search for the latest log file(see the date and time) and search with u r portal id to find the error.
    Message was edited by: Kirupanand Venkatapathi

  • How to Configure Overview of Organizational Units iView in MSS 5.0/6.0

    Hi all,
    Does anyone have any idea on how to configure the "Overview of Organizational Units" iView in MSS to work with the HR backend?
    When I click on the Organizational Unit in the iView, it does not link me to a new page and no Organizational Unit overview pops out.
    Any form of help or hints is deeply appreciated.
    Many many thanks in advance.

    Hi Leong Ko,
    In order for this to work, first and foremost your userid has to be linked to some "manager" employee of your choice in infotype 105, subtype 0001.
    Secondly, the position that this "manager" employee is holding has to be assigned to one organisational unit (technically relationship A003, but you can do this from transaction PPOME).
    Thirdly, the position in question has to be marked as "chief position" (in technical terms relationship A012-manages between the position and the org. unit to which it belongs). This can also be done from transaction PPOME.
    If the organisational unit to which the position belongs has, in turn, subordinate org. units, these will also be shown in the Iview.
    Of course you will have to be logged on to the portal with your userid (the one that you assigned to the employee in infotype 105) for this to work. It will not work if you are just testing the Iview without being logged on.
    Hope it helps.
    Regards,
    Rodrigo

  • How to Configure NWBC, ESS MSS

    Dear Consultants,
    Can anyone tell how to install ESS MSS servers in the present SAP Server, We want to use NWBC to use.
    Naresh.KM

    Hi Naresh,
    With the limited information you provided, suggestion would be to check below documents to begin your ESS/MSS setup
    http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/108c31e7-b6a7-2d10-3692-c1a9f7a5c4dc?overridelayout=t…
    How to Configure ESS and MSS in Portal..
    Hope this helps.,
    Regards,
    Deepak Kori

  • How to configure a sub view for completed items in uwl?

    I overwrote the standard view with:
    <i><View name="WorkItemsCompletedView" selectionMode="NONE" width="98%" supportedItemTypes="uwl.completedtask" columnOrder="subject, completedDate" sortby="completedDate:descend" tableDesign="ALTERNATING" visibleRowCount="10" headerVisible="yes" queryRange="Last_3_Months" tableNavigationFooterVisible="yes" tableNavigationType="CUSTOMNAV" actionRef="" refresh="300" dueDateSevere="0" dueDateWarning="0" emphasizedItems="none" displayOnlyDefinedAttributes="yes" dynamicCreationAllowed="yes" actionPosition="top" referenceBundle="completed_tasks">
                   <DisplayAttributes>
                        <DisplayAttribute name="completedDate" type="date" width="" sortable="yes" format="medium" referenceBundle="completed_date" hAlign="LEFT" vAlign="BASELINE" maxTextWidth="0" headerVisible="yes"/>
                        <DisplayAttribute name="decision" type="string" width="" sortable="yes" format="default" referenceBundle="decision" hAlign="LEFT" vAlign="BASELINE" maxTextWidth="0" headerVisible="yes"/>
                   </DisplayAttributes>
                   <Actions>
                        <Action name="refresh" reference="refresh"/>
                   </Actions>
              </View></i>
    I tried to create a subview with the following configuration:
    <i><View name="MyViewCompleted" selectionMode="NONE" width="98%" supportedItemTypes="uwl.completedtask.webflow.TS91300001" columnOrder="statusIcon, subject, creatorId, createdDate,LIEFERANT,BETRAG,BELNR,BESTELLUNG" sortby="priority:descend, dueDate:ascend, createdDate:ascend" tableDesign="ALTERNATING" visibleRowCount="10" headerVisible="yes" tableNavigationFooterVisible="yes" tableNavigationType="CUSTOMNAV" actionRef="" refresh="300" dueDateSevere="86400000" dueDateWarning="259200000" emphasizedItems="none" displayOnlyDefinedAttributes="no" dynamicCreationAllowed="yes" actionPosition="top" <b>referenceBundle="completed_tasks"></b>
                   <Descriptions default="Eingangsrechnung Ansicht">
                        <ShortDescriptions>
                             <Description Language="en" Description="Eingangsrechnung View"/>
                             <Description Language="de" Description="Eingangsrechnung View"/>
                        </ShortDescriptions>
                   </Descriptions>
                   <DisplayAttributes>
                        <DisplayAttribute name="priority" type="user" width="10" sortable="yes" format="default" referenceBundle="priority" hAlign="LEFT" vAlign="BASELINE" maxTextWidth="0" headerVisible="yes">
                             <Menu>
                                  <MenuItem name="Low" actionRef="priorityLow" referenceBundle="menu_priority_low"/>
                                  <MenuItem name="Normal" actionRef="priorityNormal" referenceBundle="menu_priority_normal"/>
                                  <MenuItem name="High" actionRef="priorityHigh" referenceBundle="menu_priority_high"/>
                                  <MenuItem name="VeryHigh" actionRef="priorityVeryHigh"/>
                             </Menu>
                        </DisplayAttribute>
                        <DisplayAttribute name="KONTIERUNG" type="string" width="10" sortable="yes" format="medium">
                             <Descriptions default="Kontierung"/>
                        </DisplayAttribute>
                        <DisplayAttribute name="LIEFERANT" type="string" width="10" sortable="yes" format="medium">
                             <Descriptions default="Lieferant"/>
                        </DisplayAttribute>
                        <DisplayAttribute name="BETRAG" type="string" width="10" sortable="yes" format="medium">
                             <Descriptions default="Betrag"/>
                        </DisplayAttribute>
                        <DisplayAttribute name="BELNR" type="string" width="10" sortable="yes" format="medium">
                             <Descriptions default="Belegnummer"/>
                        </DisplayAttribute>
                        <DisplayAttribute name="BESTELLUNG" type="string" width="10" sortable="yes" format="medium">
                             <Descriptions default="Bestellung"/>
                        </DisplayAttribute>
                   </DisplayAttributes>
                   <Actions>
                        <Action name="refresh" reference="refresh"/>
                   </Actions>
              </View></i>
    I thought, that the referenceBundle would handle the creation of a subview, but though i have a item of this type in the completedtask view i have no sub view.
    Any ideas?
    regards,
    Jens

    FYI - referenceBundle refers to Description Bundles - i.e. it is to do with text descriptions only and does not create a subview.

  • How to configure request manager service for multiple website in one web application

    I have set up sp 2013 as below:
     web application : wa1
    site collection : sc1
    sp site: site1, site2
    I used 2 WFE, 1 APP, how can I use request manager service to control  site1 to wfe1, site2 to wfe2?
    Awen

    That's not what i'd describe as load balancing.
    A better description would be load-isolation. In your description then if the load on site1 was large (and growing) but site2 was quiet then site1 would struggle and eventually become unable to handle the number of users but site2 would still be ok. That's
    fine from a QOS point of view but it's not the norm for load balancing. It would work in simple scenarios but the out of the box load balancing tools are much better suited than that sort of approach.
    This article shows how to configure the RMS and may help show how your request is difficult to configure:
    http://www.harbar.net/articles/sp2013rm2.aspx

  • Don't know which technology to utilize or how to configure ASA5505

    I have an ASA5505.  Currently, it is using static NAT on several ports to forward traffic to several devices inside my network.  It is a pain not only to configure but from the end user side.
    The issue I am having is the applicatoins I am using to access the devices become a mess with dual configurations, one for when I am connected to the internal network and one for when I am away from the office and accessing from the internet.  For example, I have 2 Cisco VC240 IP Cameras behind the ASA5505.  One is set use port 9091 and the other 9092.  When I am inside the office, I access them via http://10.1.2.215:9091 and http://10.1.2.216:9092.  But when I am away from the office, I have to have another configuration in an Android app to use them, http://external_ASA_IP:9091 and 9092 and then NAT 9091 to the object for Camera1 and 9092 for Camera2.  This is only one scenario.  I also have a UC320W that I would like to put an IP phone at home and it sounds like AnyConnect is the only way to do this.
    It sounds like to me that if I use some type of VPN, I can access the same devices using the same IP whether internal or external with the external connection using the VPN to tunnel the IP to the local network.  There seems to be quite a few ways to do this with an ASA 5505.
    AnyConnect seems like the way to go but after reading Cisco documentation, it requires your Android device to be root'd if it is not a particular Samsung model.  If I understand correctly, root'ing your phone voids the warranty.  I know it is common practice but would think Cisco would have a better solution as I am sure Cisco would not want another manufacturer telling their customers to void the warranty on their Cisco equipment in order to get it to work.
    I believe I can just use IPSEC and use the native VPN of the Android OS and also tunnel L2TP as the Android supports IPSEC-PSK/L2TP or IPSEC-CRT/L2TP.  But will either of these will support the IP phone to the UC320W?
    A friend also told me to use NginX to proxy URL's so the URL http://www.fqdn.com/camera1 gets proxy'd to the internal IP of Camera1 and http://www.fqdn.com/camera2 gets proxy'd to Camera2.  He says I should be able to store a cookie on the phone and let the phone authenticate to the camera and if the phone cannot, the proxy can authenticate internally to the IP camera over SSL.
    I don't know anymore, I am so confused and just want to simplify my life as I am just a small business with me and a couple other employees but I have full-time job and it is not IT/Network Technician, it is only CTO/CEO/CIO/CFO.  I don't have hours upon hours to set this up and test and I don't have hours upon hours to manage it.  I just need to simplify this and have so that it is a set-it-and-forget-it for 6 months to 1 year and re-evaluate or update.  So, if someone suggests IPSEC, I would not know how to configure anyway and you should expect another post.  The same for AnyConnect or any of the other suggestions.
    Thanks in advance for any advice.

    Hi!
    1. Set Calculation Mode property of ITEM_5 to Formula.
    Formula property:
    nvl(:Block_Name.ITEM_1, 0) + nvl(:Block_Name.ITEM_2, 0) + nvl(:Block_Name.ITEM_3, 0) + nvl(:Block_Name.ITEM_4, 0)
    OR
    Function_Name(Param_1,... Param_N);
    Have in view of, that the ITEM_5 data will not be saved in DataBase.
    2. When-Validate-Item trigger is usfull when is necessary to store calculated item data in DataBase.
    Rename you Post-Query trigger to When-Validate-Item.
    Modify trigger: Store calculation result in the variable.
    (Don't forget to round variable value!)
    Then compare it with ITEM_5. If they are different - :ITEM_5 := var_name.
    I prefer the first method.

  • How to create a view for all Service Requests that are not approved by reviewer

    Hallo,
    I want to create a view in the Service Requests library that shows all SRs that are not approved. How to configure condition that says: if a SR has related Review Activity which is In Progress, show that SRs?
    I couldn't find this when creating the view. Thank you.

    So here's the first problem with that: Which review activity? a SR can contain multiple RAs, so how do we decide if an arbitrary SR is approved or not? 
    As to the specific language you use (Any child RA is In Progress) you might want to look at the criteria from the default Change approval view, which does something similar: 
    <QueryCriteria Adapter="omsdk://Adapters/Criteria" xmlns="http://tempuri.org/Criteria.xsd">
    <Criteria>
    <FreeformCriteria>
    <Freeform>
    <Criteria xmlns="http://Microsoft.EnterpriseManagement.Core.Criteria/">
    <Expression>
    <And>
    <Expression>
    <SimpleExpression>
    <ValueExpressionLeft>
    <Property>$Context/Path[Relationship='CoreActivity!System.WorkItemContainsActivity' TypeConstraint='CoreActivity!System.WorkItem.Activity.ReviewActivity']/Property[Type='CoreActivity!System.WorkItem.Activity']/Status$</Property>
    </ValueExpressionLeft>
    <Operator>Equal</Operator>
    <ValueExpressionRight>
    <Value>$MPElement[Name="CoreActivity!ActivityStatusEnum.Active"]$</Value>
    </ValueExpressionRight>
    </SimpleExpression>
    </Expression>
    <Expression>
    <SimpleExpression>
    <ValueExpressionLeft>
    <Property>$Context/Property[Type='CoreChange!System.WorkItem.ChangeRequest']/Status$</Property>
    </ValueExpressionLeft>
    <Operator>Equal</Operator>
    <ValueExpressionRight>
    <Value>$MPElement[Name="CoreChange!ChangeStatusEnum.InProgress"]$</Value>
    </ValueExpressionRight>
    </SimpleExpression>
    </Expression>
    </And>
    </Expression>
    </Criteria>
    </Freeform>
    </FreeformCriteria>
    </Criteria>
    </QueryCriteria>
    This is a simple AND criteria with two componets. one looking for a Review Activity (TypeConstraint='CoreActivity!System.WorkItem.Activity.ReviewActivity') which is related to the targetting CR by Contains Activity ($Context/Path[Relationship='CoreActivity!System.WorkItemContainsActivity';
    Context in this... context means the CR targeted by the view) where it's status (/Property[Type='CoreActivity!System.WorkItem.Activity']/Status$) is In Progress ($MPElement[Name="CoreActivity!ActivityStatusEnum.Active"]$). The other is filtering
    for the target change request's status ( $Context/Property[Type='CoreChange!System.WorkItem.ChangeRequest']/Status$) is In Progress ($MPElement[Name="CoreChange!ChangeStatusEnum.InProgress"]$). 
    You could convert the second criteria to point to SRs and SR status values, and then use the similar text for the first criteria. i'd recommend
    Anton's Advanced View Editor (or
    the free version) to do the criteria adjustment. 

  • How to configure the web interface of service desk

    Hi All,
    We are currently doing a configuration on solman service desk. I am on a stage where in i need to use the web interface of service desk via tcode notif_create_bsp. However, every time i call the transaction code (call the url) i cant view the web. Only an error the "Network Access Message: The website cannot be found".
    I already activate needed services and already publish
    SIAC_PUBLISH_ALL_INT but it still doesnt work.
    I might have missed some configs/procedure on how to do it correctly.
    My questions are.
    1. How am i going to know the qualified domain name
    of the Web AS for solman? How to configure it?
    2. Can anyone give me some guide and any step by step documentation/procedure on this.
    You help/suggestion will be very much appreciated
    Thank you very much,
    Ice

    Hi,
    +"Check the following 2 things. See if the port 8000 is open and in the url for the BSP in internet explorer, replace the host name with the IP address of your Solman server.+
    +"+
    That was a helpful tip. I change the host name with the ip address ofour solman server. However, upon login, it promts me to enter username and password. I've tried to login using my solman password but it shows an error like this.
    Business Server Page (BSP) error
    What happened?
    Calling the BSP page was terminated due to an error.
    SAP Note
    The following error text was processed in the system:
    Die URL enthält keine vollständige Domainangabe (10.123.161.125 statt 10.123.161.125.).
    Exception Class CX_FQDN
    Error Name 
    Program CX_FQDN=======================CP
    Include CX_FQDN=======================CM002
    ABAP Class CX_FQDN
    Method CHECK
    Line 10 
    Long text -
    Error type: Exception
    Your SAP Business Server Pages Team
    Is there anything i need to configure so that i can maintan the username and password?
    Thank you for your assistance,
    Ice

  • How to configure Automatic Account Clearing for A/R

    Hi,
    Kindly advice me how to configure  Automatic Account Clearing for A/R
    The client requirement is
    In A/R the customer accounts are not automatically clearing when a payment is posted for that account. We are still seeing all open items and all paid or cleared items when we go to FBL5N and select open items for viewing. Please make account clearing automatic for customer payments.
    Thanks in advance
    Sunitha

    Hi,
    Use T code OB74.
    Maintain for your Chart Of Account, acct type "D", From and to customer accounts and then add the critera you want. Pls note you cannot define more than 5 criteria.
    Then schedule the clearing program job F.13 in the background.
    Cheers.

  • How to Configure the Communication among Multiple OpenMQ Servers

    Hi,
    My application is distributed across multiple machines available in the LAN.
    Components running on one machine can only communicate to OpenMQ server running on same machine.
    I want to run OpenMQ server on all the machines where components of my application is running.
    I also want a way of communication between all OpenMQ servers so that OpenMQ server exchange messages among them to transfer message to destination component running on any of the machines in the LAN.
    How can i configure two OpenMQ servers to communicate each other?
    please help with sample configuration or example.
    Thanks & regards,
    Pawan Modi

    Hi Pawan,
    It sounds like you are asking how to configure a cluster of Open Message Queue brokers.
    There's a general explanation of broker clusters at
    [http://docs.sun.com/app/docs/doc/820-6424/aerdj?a=view|http://docs.sun.com/app/docs/doc/820-6424/aerdj?a=view]
    Details of how to configure them are given at
    [http://docs.sun.com/app/docs/doc/820-6740/aeohv?a=view|http://docs.sun.com/app/docs/doc/820-6740/aeohv?a=view]
    Nigel

  • [Forum FAQ] How to configure a Data Driven Subscription which get multi-value parameters from one column of a database table?

    Introduction
    In SQL Server Reporting Services, we can define a mapping between the fields that are returned in the query to specific delivery options and to report parameters in a data-driven subscription.
    For a report with a parameter (such as YEAR) that allow multiple values, when creating a data-driven subscription, how can we pass a record like below to show correct data (data for year 2012, 2013 and 2014).
    EmailAddress                             Parameter                      
    Comment
    [email protected]              2012,2013,2014               NULL
    In this article, I will demonstrate how to configure a Data Driven Subscription which get multi-value parameters from one column of a database table
    Workaround
    Generally, if we pass the “Parameter” column to report directly in the step 5 when creating data-driven subscription.
    The value “2012,2013,2014” will be regarded as a single value, Reporting Services will use “2012,2013,2014” to filter data. However, there are no any records that YEAR filed equal to “2012,2013,2014”, and we will get an error when the subscription executed
    on the log. (C:\Program Files\Microsoft SQL Server\MSRS10_50.MSSQLSERVER\Reporting Services\LogFiles)
    Microsoft.ReportingServices.Diagnostics.Utilities.InvalidReportParameterException: Default value or value provided for the report parameter 'Name' is not a valid value.
    This means that there is no such a value on parameter’s available value list, this is an invalid parameter value. If we change the parameter records like below.
    EmailAddress                        Parameter             Comment
    [email protected]         2012                     NULL
    [email protected]         2013                     NULL
    [email protected]         2014                     NULL
    In this case, Reporting Services will generate 3 reports for one data-driven subscription. Each report for only one year which cannot fit the requirement obviously.
    Currently, there is no a solution to solve this issue. The workaround for it is that create two report, one is used for view report for end users, another one is used for create data-driven subscription.
    On the report that used create data-driven subscription, uncheck “Allow multiple values” option for the parameter, do not specify and available values and default values for this parameter. Then change the Filter
    From
    Expression:[ParameterName]
    Operator   :In
    Value         :[@ParameterName]
    To
    Expression:[ParameterName]
    Operator   :In
    Value         :Split(Parameters!ParameterName.Value,",")
    In this case, we can specify a value like "2012,2013,2014" from database to the data-driven subscription.
    Applies to
    Microsoft SQL Server 2005
    Microsoft SQL Server 2008
    Microsoft SQL Server 2008 R2
    Microsoft SQL Server 2012
    Please click to vote if the post helps you. This can be beneficial to other community members reading the thread.

    For every Auftrag, there are multiple Position entries.
    Rest of the blocks don't seems to have any relation.
    So you can check this code to see how internal table lt_str is built whose first 3 fields have data contained in Auftrag, and next 3 fields have Position data. The structure is flat, assuming that every Position record is related to preceding Auftrag.
    Try out this snippet.
    DATA lt_data TYPE TABLE OF string.
    DATA lv_data TYPE string.
    CALL METHOD cl_gui_frontend_services=>gui_upload
      EXPORTING
        filename = 'C:\temp\test.txt'
      CHANGING
        data_tab = lt_data
      EXCEPTIONS
        OTHERS   = 19.
    CHECK sy-subrc EQ 0.
    TYPES:
    BEGIN OF ty_str,
      a1 TYPE string,
      a2 TYPE string,
      a3 TYPE string,
      p1 TYPE string,
      p2 TYPE string,
      p3 TYPE string,
    END OF ty_str.
    DATA: lt_str TYPE TABLE OF ty_str,
          ls_str TYPE ty_str,
          lv_block TYPE string,
          lv_flag TYPE boolean.
    LOOP AT lt_data INTO lv_data.
      CASE lv_data.
        WHEN '[Version]' OR '[StdSatz]' OR '[Arbeitstag]' OR '[Pecunia]'
             OR '[Mita]' OR '[Kunde]' OR '[Auftrag]' OR '[Position]'.
          lv_block = lv_data.
          lv_flag = abap_false.
        WHEN OTHERS.
          lv_flag = abap_true.
      ENDCASE.
      CHECK lv_flag EQ abap_true.
      CASE lv_block.
        WHEN '[Auftrag]'.
          SPLIT lv_data AT ';' INTO ls_str-a1 ls_str-a2 ls_str-a3.
        WHEN '[Position]'.
          SPLIT lv_data AT ';' INTO ls_str-p1 ls_str-p2 ls_str-p3.
          APPEND ls_str TO lt_str.
      ENDCASE.
    ENDLOOP.

  • How to find out logs related to which server, If i have 2 WFE's in the farm. How to configure logs path?

    Hi,
    I got this doubt, when searching logs on the servers. I have 2 WFE's in my farm, I got an error from enduser. So in which WFE server i need to check the logs.
    How to configure logs path. Is it is possible to specify logs path on our own instead of 14 hive folder.
    Badri

    That is a really bad idea, especially with idle disconnects and other unreliability of CIFS.
    You should instead check out the command
    Merge-SPLogFiles which will allow you to combine ULS logs from multiple servers into a single file.
    You can certainly specify your own path, but the path must be available on all servers. For example, if you specified D:\Logs, D:\Logs must exist on all SharePoint servers within the farm.
    Trevor Seward
    Follow or contact me at...
    &nbsp&nbsp
    This post is my own opinion and does not necessarily reflect the opinion or view of Microsoft, its employees, or other MVPs.

  • How to configure CustomLoginModule in jps-config.xml

    Hi,
    How can we configure a Custom Login Module using jps-config.xml, as we do not want to use weblogic custom authentication provider as it needs application jars(which we require fo authenticating the user) to be kept in weblogic classpath.
    Is there any documentation on how to configure and use Custom Login Modules in jps-config.xml, I tried to create a LoginModule and specify it in jps-config.xml, but
    My LoginModule is not getting called.
    Jdev version: 11.1.1.3.0
    Server : weblogic
    my jps-config.xml is
                  <?xml version = '1.0' encoding = 'Cp1252'?>
    <jpsConfig xmlns="http://xmlns.oracle.com/oracleas/schema/11/jps-config-11_1.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.oracle.com/oracleas/schema/11/jps-config-11_1.xsd">
       <property value="doasprivileged" name="oracle.security.jps.jaas.mode"/>
       <property value="custom.provider" name="true"/>
       <propertySets/>
       <serviceProviders>
          <serviceProvider class="oracle.security.jps.internal.credstore.ssp.SspCredentialStoreProvider" name="credstore.provider" type="CREDENTIAL_STORE">
             <description>Credential Store Service Provider</description>
          </serviceProvider>
          <serviceProvider class="oracle.security.jps.internal.login.jaas.JaasLoginServiceProvider" name="jaas.login.provider" type="LOGIN">
             <description>
                Login Module Service Provider
             </description>
          </serviceProvider>
          <serviceProvider class="oracle.security.jps.internal.idstore.xml.XmlIdentityStoreProvider" name="idstore.xml.provider" type="IDENTITY_STORE">
             <description>XML-based IdStore Provider</description>
          </serviceProvider>
          <serviceProvider class="oracle.security.jps.internal.policystore.xml.XmlPolicyStoreProvider" name="policystore.xml.provider" type="POLICY_STORE">
             <description>XML-based PolicyStore Provider</description>
          </serviceProvider>
       </serviceProviders>
       <serviceInstances>
          <serviceInstance provider="credstore.provider" name="credstore">
             <property value="./" name="location"/>
          </serviceInstance>
          <serviceInstance provider="jaas.login.provider" name="CustomLoginModule">
             <property value="SUFFICIENT" name="jaas.login.controlFlag"/>
             <property value="SEVERE" name="log.level"/>
             <property value="org.calwin.view.CustomLoginModule" name="loginModuleClassName"/>
          </serviceInstance>
          <serviceInstance provider="idstore.xml.provider" name="idstore.xml">
             <property value="./jazn-data.xml" name="location"/>
             <property value="OBFUSCATE" name="jps.xml.idstore.pwd.encoding"/>
             <property value="jps" name="subscriber.name"/>
          </serviceInstance>
          <serviceInstance provider="policystore.xml.provider" name="policystore.xml">
             <property value="./jazn-data.xml" name="location"/>
          </serviceInstance>
       </serviceInstances>
       <jpsContexts default="TestMultiDatasource">
          <jpsContext name="TestMultiDatasource">
             <serviceInstanceRef ref="idstore.xml"/>
             <serviceInstanceRef ref="credstore"/>
             <serviceInstanceRef ref="policystore.xml"/>
          </jpsContext>
          <jpsContext name="anonymous">
             <serviceInstanceRef ref="credstore"/>
          </jpsContext>
       </jpsContexts>
    </jpsConfig>My Login Module Class:
    package org.calwin.view;
    import java.io.IOException;
    import java.security.Principal;
    import java.util.Map;
    import javax.security.auth.Subject;
    import javax.security.auth.callback.Callback;
    import javax.security.auth.callback.CallbackHandler;
    import javax.security.auth.callback.NameCallback;
    import javax.security.auth.callback.PasswordCallback;
    import javax.security.auth.callback.UnsupportedCallbackException;
    import javax.security.auth.login.LoginException;
    import javax.security.auth.spi.LoginModule;
    import javax.servlet.http.HttpServletRequest;
    import weblogic.security.auth.callback.ContextHandlerCallback;
    import weblogic.security.principal.WLSUserImpl;
    import weblogic.security.service.ContextHandler;
    public class CustomLoginModule
        implements LoginModule
      // initial state
      private Subject subject;
      private CallbackHandler callbackHandler;
      // the authentication status
      private boolean succeeded = false;
      private boolean commitSucceeded = false;
      // username and password
      private String username;
      private String password;
      // testUser's SamplePrincipal
      private Principal userPrincipal;
       * Initialize this <code>LoginModule</code>.
       * <p>
       * @param subject the <code>Subject</code> to be authenticated. <p>
       * @param callbackHandler a <code>CallbackHandler</code> for communicating
       *      with the end user (prompting for user names and
       *      passwords, for example). <p>
       * @param sharedState shared <code>LoginModule</code> state. <p>
       * @param options options specified in the login
       *      <code>Configuration</code> for this particular
       *      <code>LoginModule</code>.
      public void initialize(Subject subject, CallbackHandler callbackHandler,
                             Map sharedState, Map options) {
        this.subject = subject;
        this.callbackHandler = callbackHandler;
       * Authenticate the user by prompting for a user name and password.
       * <p>
       * @return true in all cases since this <code>LoginModule</code>
       *    should not be ignored.
       * @exception FailedLoginException if the authentication fails. <p>
       * @exception LoginException if this <code>LoginModule</code>
       *    is unable to perform the authentication.
      public boolean login() throws LoginException {
        if (callbackHandler == null)
          throw new LoginException("Error: no CallbackHandler available " +
                                   "to garner authentication information from the user");
        Callback[] callbacks = new Callback[3];
        callbacks[0] = new NameCallback("user name: ");
        callbacks[1] = new PasswordCallback("password: ", false);
        callbacks[2]=new ContextHandlerCallback();
          try {
            callbackHandler.handle(callbacks);
          } catch (UnsupportedCallbackException uce) {
              throw new LoginException("Callback Not Supported");
          } catch (IOException ioe) {
              throw new LoginException("I/O Failed");
          username = ((NameCallback)callbacks[0]).getName();
          char[] tmpPassword = ((PasswordCallback)callbacks[1]).getPassword();
          if (tmpPassword == null) {
            tmpPassword = new char[0];
          password = new String(tmpPassword);
          ((PasswordCallback)callbacks[1]).clearPassword();
        // verify the username/password
        boolean usernameCorrect = true;
        boolean passwordCorrect = true;
        succeeded = true;
        return true;
       * <p> This method is called if the LoginContext's
       * overall authentication succeeded
       * (the relevant REQUIRED, REQUISITE, SUFFICIENT and OPTIONAL LoginModules
       * succeeded).
       * <p> If this LoginModule's own authentication attempt
       * succeeded (checked by retrieving the private state saved by the
       * <code>login</code> method), then this method associates a
       * <code>SamplePrincipal</code>
       * with the <code>Subject</code> located in the
       * <code>LoginModule</code>.  If this LoginModule's own
       * authentication attempted failed, then this method removes
       * any state that was originally saved.
       * <p>
       * @exception LoginException if the commit fails.
       * @return true if this LoginModule's own login and commit
       *    attempts succeeded, or false otherwise.
      public boolean commit() throws LoginException {
        if (succeeded == false) {
          return false;
        } else {
          userPrincipal = new WLSUserImpl(username);
          if (!subject.getPrincipals().contains(userPrincipal))
            subject.getPrincipals().add(userPrincipal);
          // in any case, clean out state
          username = null;
          password = null;
          commitSucceeded = true;
          return true;
       * <p> This method is called if the LoginContext's
       * overall authentication failed.
       * (the relevant REQUIRED, REQUISITE, SUFFICIENT and OPTIONAL LoginModules
       * did not succeed).
       * <p> If this LoginModule's own authentication attempt
       * succeeded (checked by retrieving the private state saved by the
       * <code>login</code> and <code>commit</code> methods),
       * then this method cleans up any state that was originally saved.
       * <p>
       * @exception LoginException if the abort fails.
       * @return false if this LoginModule's own login and/or commit attempts
       *    failed, and true otherwise.
      public boolean abort() throws LoginException {
        if (succeeded == false) {
          return false;
        } else if (succeeded == true && commitSucceeded == false) {
          // login succeeded but overall authentication failed
          succeeded = false;
          username = null;
          if (password != null) {
            password = null;
          userPrincipal = null;
        } else {
          // overall authentication succeeded and commit succeeded,
          // but someone else's commit failed
          logout();
        return true;
       * Logout the user.
       * <p> This method removes the <code>SamplePrincipal</code>
       * that was added by the <code>commit</code> method.
       * <p>
       * @exception LoginException if the logout fails.
       * @return true in all cases since this <code>LoginModule</code>
       *          should not be ignored.
      public boolean logout() throws LoginException {
        subject.getPrincipals().remove(userPrincipal);
        succeeded = false;
        succeeded = commitSucceeded;
        username = null;
        if (password != null) {
          password = null;
        userPrincipal = null;
        return true;
    }My adf-config.xml:
    <sec:adf-security-child xmlns="http://xmlns.oracle.com/adf/security/config">
        <CredentialStoreContext credentialStoreClass="oracle.adf.share.security.providers.jps.CSFCredentialStore"
                                credentialStoreLocation="../../src/META-INF/jps-config.xml"/>
        <sec:JaasSecurityContext initialContextFactoryClass="oracle.adf.share.security.JAASInitialContextFactory"
                                 jaasProviderClass="oracle.adf.share.security.providers.jps.JpsSecurityContext"
                                 authorizationEnforce="true"
                                 authenticationRequire="true"/>
      </sec:adf-security-child>My jazn.xml:
    <?xml version = '1.0' encoding = 'UTF-8' standalone = 'yes'?>
    <jazn-data xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
               xsi:noNamespaceSchemaLocation="http://xmlns.oracle.com/oracleas/schema/jazn-data-11_0.xsd">
      <jazn-realm default="jazn.com">
        <realm>
          <name>jazn.com</name>
        </realm>
      </jazn-realm>
    </jazn-data>My web.xml:
    <filter>
        <filter-name>JpsFilter</filter-name>
        <filter-class>oracle.security.jps.ee.http.JpsFilter</filter-class>
        <init-param>
          <param-name>enable.anonymous</param-name>
          <param-value>true</param-value>
        </init-param>
        <init-param>
          <param-name>remove.anonymous.role</param-name>
          <param-value>false</param-value>
        </init-param>
      </filter>
    <servlet>
        <servlet-name>adfAuthentication</servlet-name>
        <servlet-class>oracle.adf.share.security.authentication.AuthenticationServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
      </servlet>
    <servlet-mapping>
        <servlet-name>adfAuthentication</servlet-name>
        <url-pattern>/adfAuthentication</url-pattern>
      </servlet-mapping>
    <security-constraint>
        <web-resource-collection>
          <web-resource-name>adfAuthentication</web-resource-name>
          <url-pattern>/adfAuthentication</url-pattern>
        </web-resource-collection>
        <auth-constraint>
          <role-name>valid-users</role-name>
        </auth-constraint>
      </security-constraint>
      <login-config>
        <auth-method>FORM</auth-method>
        <form-login-config>
          <form-login-page>/login.html</form-login-page>
          <form-error-page>/error.html</form-error-page>
        </form-login-config>
      </login-config>
      <security-role>
        <role-name>valid-users</role-name>
      </security-role>weblogic.xml:
      <security-role-assignment>
        <role-name>valid-users</role-name>
        <principal-name>users</principal-name>
      </security-role-assignment>Regards,
    Saikiran

    Ours is not a Desktop Application, but we want to handle Authentication(Which authenticates the userid and password by making a Tuxedo call) and add the Principal to Subject in session, so that ADF Authorization and securityContext can be used as is,
    but doing this with Custom Authentication Provider in weblogic needs me to have a lot of Tuxedo Service related jars in weblogic/system classpath which i feel is not right thing to do, as the same jars are required in application also, which means i will have the jars in class path twice and i need to deploy the jars to both places everytime there is any change.
    Is there any way by which i can set Authenticated principal to Subject in the created session from within Application?

  • How to configure PPPoE in solaris 10

    Hi
    As I have to configure Internet in one Intel based Solaris box [Solaris 10] can you tell me the steps how to configure it as I have Brodband connection of Iqara.

    hi,
    did you configure your interface for pppoe? the first step is configuring your interface for ppoe and then you can define a pppoe access server.
    please look at http://docs.sun.com/app/docs/doc/816-4555/6maoquija?a=view for details.
    yavuz

Maybe you are looking for