23 Managing Portlet Producers

This chapter describes how to register, edit, delete, and deploy WSRP and Oracle PDK-Java portlet producers.

Note:

Pagelet producer registration is described in a different chapter. For details, see Section 24.2, "Registering the Pagelet Producer".

System administrators can use Fusion Middleware Control or the WLST command-line tool to register and manage WSRP and Oracle PDK-Java portlet producers for WebCenter application deployments.

Application administrators can also register and manage portlet producers at runtime through out-of-the-box administration pages or using the portlet producer task flow.

This chapter includes the following sections:

Audience

The content of this chapter is intended for Fusion Middleware administrators (users granted the Admin or Operator role through the Oracle WebLogic Server Administration Console). For more information, see Section 1.13, "Oracle WebCenter Administration Tools."

23.1 What You Should Know About Portlet Producers

Consider the following while working with portlet producers:

23.2 Registering WSRP Producers

This section describes how to register WSRP producers for a deployed application, using Fusion Middleware Control and WLST commands. This section includes the following subsections:

For information about how to register WSRP producers at design-time, using JDeveloper, see the section "How to Register a WSRP Portlet Producer" in the Oracle Fusion Middleware Developer's Guide for Oracle WebCenter.

23.2.1 Registering a WSRP Producer Using Fusion Middleware Control

To register a WSRP portlet producer:

  1. Log in to Fusion Middleware Control and navigate to the home page for your WebCenter Portal application (or WebCenter Spaces). For more information, see:

  2. Do one of the following:

    • For WebCenter Portal applications - From the Application Deployment menu, choose WebCenter > Register Producer.

    • For WebCenter Spaces - From the WebCenter menu, choose Register Producer.

  3. In the Add Portlet Producer Connection section, enter connection details for the WSRP producer.

    For detailed parameter information, see Table 23-1.

    Table 23-1 WSRP Producer Connection Parameters

    Field Description

    Connection Name

    Enter a unique name to identify this portlet producer registration within the WebCenter application. The name must be unique across all WebCenter connection types.

    The name you specify here appears in Oracle Composer (under the Portlets folder).

    Producer Type

    Indicate the type of this producer. Select WSRP Producer.

    WSDL URL

    The registration URL for the WSRP producer.

    The syntax varies according to your WSRP implementation. For example, possible URL formats for a portlet deployed to the Oracle WSRP container include:

    http://host_name:port_number/context_root/portlets/wsrp2?WSDL

    http://host_name:port_number/context_root/portlets/wsrp1?WSDL

    http://host_name:port_number/context_root/portlets/?WSDL (WSRP 1.0 for backward compatibility)

    Where:

    • host_name is the server where your producer is deployed.

    • port_number is the HTTP listener port number.

    • context_root is the Web application's context root.

    • portlets wsrp(1|2)?WSDL is static text. All producers deployed to the Oracle WSRP container are exposed as WSRP version 1 and version 2 producers.

      In WebCenter Spaces, only v2 WSDLs are supported for Oracle WebLogic Portal Producers.

    For example:

    http://myhost.com:7778/MyPortletApp/portlets/wsrp2?WSDL

    For WSRP producers, you can obtain this registration URL by accessing the producer test page at:

    http://host_name:port_number/context_root/info

    Use Proxy?

    Select if the WebCenter application must use an HTTP proxy when contacting this producer. If selected, enter values for Proxy Host and Proxy Port.

    A proxy is required when the WebCenter application and the remote portlet producer are separated by a firewall and an HTTP proxy is needed to communicate with the producer.

    Proxy Host

    Enter the host name or IP address of the proxy server.

    Do not prefix http:// to the proxy server name.

    Proxy Port

    Enter the port number on which the proxy server listens. The default port is 80.

    Default Execution Timeout (Seconds)

    Enter a suitable timeout for communications with the producer, in seconds. For example, the maximum time the producer may take to register, deregister, or display portlets on WebCenter pages. The default is 30 seconds.

    Individual portlets may define their own timeout period, which takes precedence over the value expressed here.


  4. Use the Security section to specify the type of security token to use for the identity propagation/assertion.

    The security token with the propagated or asserted user information is represented as an XML element in the SOAP header. The security token and the SOAP message body are then digitally signed to prove the authenticity of the SOAP message origin from the WebCenter application. WebCenter applications support six types of security tokens: WSS 1.0 Username Token Without Password, WSS 1.0 Username Token With Password, WSS 1.0 SAML Token, WSS 1.0 SAML Token With Message Integrity, WSS 1.0 SAML Token With Message Protection, and WSS 1.1 SAML Token With Message Protection.

    Where SAML is an abbreviation for Security Assertion Markup Language.

    Note:

    PeopleSoft WSRP producers support two profiles: Username Token With Password and SAML Token With Message Integrity. Oracle Portal (as a consumer) supports three profiles: Username Token Without Password, Username Token With Password, SAML Token With Message Integrity. Other Oracle WSRP producers support all six profiles. For other WSRP containers, check with the specific vendor to determine the token formats they support.

    For detailed parameter information, see Table 23-2.

    Table 23-2 WSRP Producer Security Connection Parameters

    Field Description

    Token Profile

    Select the type of token profile to use for authentication with this WSRP producer. Select from:

    • WSS 1.0 SAML Token With Message Integrity(wss10_saml_token_with_message_integrity_client_policy)—This policy provides message-level integrity protection and SAML-based authentication for outbound SOAP requests in accordance with the WS-Security 1.0 standard. A SAML token, included in the SOAP message, is used in SAML-based authentication with sender vouches confirmation. This policy uses WS-Security's Basic 128 suite of asymmetric key technologies and SHA-1 hashing algorithm for message integrity.

    • WSS 1.0 SAML Token With Message Protection(oracle/wss10_saml_token_with_message_protection_client_policy)—This policy provides message-level protection (integrity and confidentiality) and SAML-based authentication for outbound SOAP requests in accordance with the WS-Security 1.0 standard. The Web service consumer includes a SAML token in the SOAP header and the confirmation type is sender-vouches. This policy uses WS-Security's Basic 128 suite of asymmetric key technologies. Specifically, RSA key mechanisms for message confidentiality, SHA-1 hashing algorithm for message integrity, and AES-128 bit encryption.

    • WSS 1.0 Username Token Without Password(oracle/wss10_username_id_propagation_with_msg_protection_client_policy)—This policy provides username (with password) token profile based identity propagation with certificate based message protection for outbound SOAP requests in accordance with the WS-Security 1.0 standard. Credentials (username only) are included in outbound SOAP request messages through a WS-Security UsernameToken header. No password is included. Message protection is provided using WS-Security 1.0's Basic 128 suite of asymmetric key technologies. Specifically, RSA key mechanisms for message confidentiality, SHA-1 hashing algorithm for message integrity, and AES-128 bit encryption.

    Token Profile (cont.)

    • WSS 1.0 Username Token With Password(oracle/wss10_username_token_with_message_protection_client_policy)—This policy provides username (with password) token profile based identity propagation with certificate based message protection for outbound SOAP requests in accordance with the WS-Security v1.0 standard. Both plain text and digest mechanisms are supported. This policy uses WS-Security's Basic 128 suite of asymmetric key technologies. Specifically, RSA key mechanism for message confidentiality, SHA-1 hashing algorithm for message integrity, and AES-128 bit encryption.

      Use this token profile if the WSRP producer has a different identity store. You will need to define an external application pertaining to the producer and associate the external application with this producer.

    • WSS 1.0 SAML Token (oracle/wss10_saml_token_client_policy)—This policy provides SAML-based authentication for outbound SOAP request messages in accordance with the WS-Security 1.0 standard. The policy propagates user identity and is typically used in intra departmental deployments where message protection and integrity checks are not required.

      This policy does not require any keystore configuration.

    • WSS 1.1 SAML Token with Message Protection(oracle/wss11_saml_token_with_message_protection_client_policy)—This policy provides message-level protection (integrity and confidentiality) and SAML token population for outbound SOAP requests in accordance with the WS-Security 1.1 standard. A SAML token, included in the SOAP message, is used in SAML-based authentication with sender vouches confirmation. This policy uses the symmetric key technology for signing and encryption, and WS-Security's Basic 128 suite of asymmetric key technologies for endorsing signatures.

    • None—No token. If None is selected, no WS-Security header is attached to the SOAP message.

    Configuration

    Select:

    • Default to use a default token profile configuration.

    • Custom to provide a custom Oracle Web Service Manager configuration.

      Additional security options display (including all the keystore properties) when you select Custom.

    Issuer Name

    Enter the name of the issuer of the SAML Token.

    For example: www.example.com

    The issuer name is the attesting entity that vouches for the verification of the subject, and it must be a trusted SAML issuer on the producer end.

    Valid for: WSS 1.0 SAML Token With Message Integrity, WSS 1.0 SAML Token With Message Protection. WSS 1.0 SAML Token, WSS 1.1 SAML Token with Message Protection

    Default User

    Enter a user name to assert to the remote producer when the user is not authenticated with the WebCenter application.

    When unauthenticated, the identity anonymous is associated with the application user. The value anonymous may be inappropriate for the remote producer, so it may be necessary to specify an alternative identity here. Keep in mind though, that in this case, the WebCenter application has not authenticated the user so the default user you specify should be a low privileged user in the remote producer. If the user has authenticated to the application, the user's identity is asserted rather than the default user.

    The remote WSRP producer must be set up to accept this information. You must also add a grant to the policy store as described in Section 23.2.3, "Adding a Grant to the Policy Store for a Mapped User Identity."

    Valid for: WSS 1.0 SAML Token With Message Integrity, WSS 1.0 SAML Token With Message Protection, WSS 1.0 SAML Token, WSS 1.1 SAML Token with Message Protection and WSS 1.0 Username Without Password.

    Associated External Application

    (Username With Password)

    If this producer uses an external application for authentication, use the Associated External Application dropdown list to identify the application. If the application you want is not listed, select Create New to define the external application now.

    An external application is required to support producers using the security option WSS 1.0 Username With Password. The external application stores and supplies the user credentials. See also Section 25.2, "Registering External Applications."

    Valid for: WSS 1.0 Username With Password only.


  5. Use the Keystore section to specify the location of the key store that contains the certificate and private key that is used for signing some parts (security token and SOAP message body) of the SOAP message.

    Only configure these properties if you want to override the configuration specified for the domain

    For detailed parameter information, see Table 23-3.

    Table 23-3 WSRP Producer Key Store Connection Parameters

    Field Description

    Recipient Alias

    Specify the key store alias that is associated with the producer's certificate.

    This certificate is used to encrypt the message to the producer.

    Store Path

    Enter the absolute path to the keystore that contains the certificate and the private key that is used for signing or encrypting the SOAP message (security token and message body). The signature, encryption, and recipient keys described in this table must be available in this keystore.

    The keystore file specified must be created using JDK's keytool utility.

    Password

    Provide the password to the keystore that was set when the keystore was created. The producer is not available if a password is not specified or incorrect.

    Signature Key Alias

    Enter the signature key alias.

    The Signature Key Alias is the identifier for the certificate associated with the private key that is used for signing.

    Signature Key Password

    Enter the password for accessing the key identified by the alias specified in Signature Key Alias.

    Encryption Key Alias

    Enter the key alias used by the producer to encrypt the return message. A valid value is one of the key aliases that is located in the specified key store.

    This property is optional. If not specified, the producer uses the signing key for encrypting the return message.

    Encryption Key Password

    Enter the password for accessing the encryption key.


  6. Click OK.

    The new producer appears in the connection table.

23.2.2 Registering a WSRP Producer Using WLST

Use the WLST command registerWSRPProducer to create a connection to a WSRP portlet producer and register the producer with your WebCenter application. For command syntax and examples, see the section "registerWSRPProducer" in the Oracle Fusion Middleware WebLogic Scripting Tool Command Reference.

For information on how to run WLST commands, see Section 1.13.3.1, "Running Oracle WebLogic Scripting Tool (WLST) Commands."

23.2.3 Adding a Grant to the Policy Store for a Mapped User Identity

If you are using the Default User field to map an alternative user identity you must also add a grant to the policy store by doing one of the following:

  • Adding the following grant directly to the policy store:

    <grant>
      <grantee>
       <codesource>
     
    <url>file:${common.components.home}/modules/oracle.wsm.agent.common_11.1.1/wsm-agent.jar</url>
       </codesource>
      </grantee>
      <permissions>
        <permission>
          <class>oracle.wsm.security.WSIdentityPermission</class>
          <name>resource=MyAppID</name>
          <actions>assert</actions>
        </permission>
      <permissions>
    <grant>
    

    Replacing MyAppID in the line above with the name of the client application, including the version number if any.

  • Granting the permission by running the following WLST command:

    grantPermission(codeBaseURL='file:${common.components.home}/modules/oracle.wsm.agent.common_11.1.1/wsm-agent.jar',
    permClass='oracle.wsm.security.WSIdentityPermission',
    permTarget='resource=MyAppID', permActions='assert')
    

    Replacing MyAppID with the name of the client application, including the version number if any.

23.2.4 Registering a WSRP Portlet Producer in WebCenter Spaces

For information about registering a WSRP portlet producer in WebCenter Spaces, see the section "Registering Portlet Producers Through WebCenter Administration" in the Oracle Fusion Middleware User's Guide for Oracle WebCenter.

23.2.5 Registering a WSRP Portlet Producer in WebCenter Portal Applications

For information about registering a WSRP portlet producer in WebCenter Portal applications, see the section "How to Register a WSRP Portlet Producer" in the Oracle Fusion Middleware Developer's Guide for Oracle WebCenter.

23.3 Testing WSRP Producer Connections

To verify a WSRP producer connection, first obtain the producer URL from:

http://host_name:port_number/context_root/info

Then, run the producer URL in a browser window.

For a WSRP v1 producer connection, the URL format is:

http://host_name:port_number/context_root/portlets/wsrp1?WSDL

For example:

http://myhost.com:7778/MyPortletApp/portlets/wsrp1?WSDL

For a WSRP v2 producer connection, the URL format is:

http://host_name:port_number/context_root/portlets/wsrp2?WSDL

For example:

http://myhost.com:7778/MyPortletApp/portlets/wsrp2?WSDL

23.4 Registering Oracle PDK-Java Producers

This section describes how to register PDK-Java producers for a deployed WebCenter application using Fusion Middleware Control and WLST commands. This section includes the following subsections:

For information about how to register PDK-Java producers at design-time, using JDeveloper, see the section "How to Register an Oracle PDK-Java Portlet Producer" in the Oracle Fusion Middleware Developer's Guide for Oracle WebCenter.

23.4.1 Registering an Oracle PDK-Java Producer Using Fusion Middleware Control

To register an Oracle PDK-Java portlet producer:

  1. Log in to Fusion Middleware Control and navigate to the home page for your WebCenter Portal application (or WebCenter Spaces):

  2. Do one of the following:

    • For WebCenter Portal applications - From the Application Deployment menu, choose WebCenter > Register Producer.

    • For WebCenter Spaces - From the WebCenter menu, choose Register Producer.

  3. In the Add Portlet Producer Connection section, enter connection details for the Oracle PDK-Java producer.

    For detailed parameter information, see Table 23-4, "Oracle PDK-Java Producer Connection Parameters".

    Table 23-4 Oracle PDK-Java Producer Connection Parameters

    Field Description

    Connection Name

    Enter a unique name that identifies this portlet producer registration within the WebCenter application. The name must be unique across all WebCenter connection types.

    The name you specify here appears in Oracle Composer (under the Portlets folder).

    Producer Type

    Indicate the type of this producer. Select Oracle PDK-Java Producer.

    URL End Point

    Enter the Oracle PDK-Java producer's URL using the following syntax:

    http://host_name:port_number/context_root/providers

    Where:

    • host_name is the server where the producer is deployed

    • port_number is the HTTP Listener port number

    • context_root is the Web application's context root

    • providers is static text

    For example:

    http://myHost.com:7778/myEnterprisePortlets/providers

    Service ID

    Enter a unique identifier for this producer.

    PDK-Java enables you to deploy multiple producers under a single adapter servlet. Producers are identified by their unique service ID. A service ID is required only if the service ID is not appended to the URL end point.

    For example, the following URL endpoint requires sample as the service ID:

    http://domain.example.com:7778/axyz/providers

    However, the following URL endpoint, does not require a service ID:

    http://domain.example.com:7778/axyz/providers/sample

    The service ID is used to look up a file called <service_id>.properties, which defines the characteristics of the producer, such as whether to display its test page. Use any value to create the service ID. When no Service ID is specified, _default.properties is used.

    Use Proxy?

    Select this checkbox if the WebCenter application must use an HTTP proxy when contacting this producer. If selected, enter values for Proxy Host and Proxy Port.

    A proxy is required if the WebCenter application and the remote portlet producer are separated by a firewall and an HTTP proxy is needed for communication with the producer.

    Proxy Host

    Enter the host name or IP address of the proxy server.

    Do not prefix http:// to the proxy server name.

    Proxy Port

    Enter the port number on which the proxy server listens. The default port is 80.

    Associated External Application

    If one of this producer's portlets requires authentication, use the Associated External Application dropdown to identify the correct external application.

    If the application you want is not listed, select Create New to define the external application now.

    See also Section 25.2, "Registering External Applications."

    Establish Session?

    Select to enable a user session when executing portlets from this producer. When sessions are enabled, they are maintained on the producer server. This allows the portlet code to maintain information in the session.

    Message authentication uses sessions, so if you specify a shared key, you must also select this option.

    For sessionless communication between the producer and the server, do not select this option.

    Default Execution Timeout (Seconds)

    Enter a suitable timeout for communications with the producer, in seconds. For example, the maximum time the producer may take to register, deregister, or display portlets on WebCenter pages. This defaults to 30 seconds.

    Individual portlets may define their own timeout period, which takes precedence over the value expressed here.

    Subscriber ID

    Enter a string to identify the consumer of the producer being registered.

    When a producer is registered with an application, a call is made to the producer. During the call, the consumer (WebCenter application in this instance) passes the value for Subscriber ID to the producer. If the producer does not see the expected value for Subscriber ID, it might reject the registration call.

    Shared Key

    Enter a shared key to use for producers that are set up to handle encryption.

    The shared key is used by the encryption algorithm to generate a message signature for message authentication. Note that producer registration fails if the producer is set up with a shared key and you enter an incorrect shared key here. The shared key can contain between 10 and 20 alphanumeric characters.

    This key is also used when registering a producer using the Federated Portal Adapter (FPA). The Shared Key is also known as the HMAC key.


  4. Click OK.

    The new producer appears in the connection table.

23.4.2 Registering an Oracle PDK-Java Producer Using WLST

Use the WLST command registerPDKJavaProducer to create a connection to a PDK-Java portlet producer and register the producer with your WebCenter application. For command syntax and examples, see the section "registerPDKJavaProducer" in the Oracle Fusion Middleware WebLogic Scripting Tool Command Reference.

For information on how to run WLST commands, see Section 1.13.3.1, "Running Oracle WebLogic Scripting Tool (WLST) Commands."

23.4.3 Registering an Oracle PDK-Java Portlet Producer in WebCenter Spaces

For information about registering an Oracle PDK-Java portlet producer in WebCenter Spaces, see the section "Registering Portlet Producers Through WebCenter Administration" in the Oracle Fusion Middleware User's Guide for Oracle WebCenter.

23.4.4 Registering an Oracle PDK-Java Portlet Producer in WebCenter Portal Applications

For information about registering an Oracle PDK-Java portlet producer in WebCenter Portal applications, see the section "How to Register an Oracle PDK-Java Portlet Producer" in the Oracle Fusion Middleware Developer's Guide for Oracle WebCenter.

23.5 Testing Oracle PDK-Java Producer Connections

To verify an Oracle PDK-Java producer connection, run the producer URL in a browser window in the following format:

http://host_name:port_number/context-root/providers/producer_name

For example:

http://domain.example.com:7778/axyz/providers/sample

23.6 Editing Producer Registration Details

You can update producer registration details at any time.

If a producer moves to a different location, then you must reconfigure any connections you have defined to this producer. You can use Fusion Middleware Control or WLST to edit the URL property:

  • WDSL URL for a WSRP producer

  • URL End Point for an Oracle PDK-Java producer

To retain all the portlet customizations and personalizations that users make while working with WebCenter applications, you must also migrate producer customizations and personalizations to the producer's new location. Use the WLST commands exportPortletClientMetadata and importPortletClientMetadata to migrate portlet client metadata to a different location. For more information, see Section 37.2.3, "Exporting Portlet Client Metadata (WebCenter Portal Applications)" and Section 37.2.4, "Importing Portlet Client Metadata (WebCenter Portal Applications)."

Note:

If you want to migrate all the metadata for a particular producer (rather than portlet customizations and personalizations only), then use the producer migration tool. For more information, see Section 37.1.3.13, "Exporting Portlet Producers" and Section 37.1.3.14, "Importing Portlet Producers."

This section includes the following subsections:

23.6.1 Editing Producer Registration Details Using Fusion Middleware Control

To update connection details for a portlet producer:

  1. Log in to Fusion Middleware Control and navigate to the home page for your WebCenter Portal application (or WebCenter Spaces):

  2. Do one of the following:

    • For WebCenter Portal applications - From the Application Deployment menu, choose WebCenter > Service Configuration.

    • For WebCenter Spaces - From the WebCenter menu, choose Settings > Service Configuration.

  3. From the list of services on the WebCenter Service Configuration page, select Portlet Producers.

  4. In the Manage Portlet Producer Connections section, select the producer you want to modify, and click Edit.

  5. In the Edit Portlet Producer Connection section, modify connection details, as required. For more information, see:

  6. Click OK.

23.6.2 Editing Producer Registration Details Using WLST

Use the following WLST commands to edit portlet producer connections:

For command syntax and examples, see the Oracle Fusion Middleware WebLogic Scripting Tool Command Reference.

For information on how to run WLST commands, see Section 1.13.3.1, "Running Oracle WebLogic Scripting Tool (WLST) Commands."

23.6.3 Migrating WSRP Producer Metadata to a New WSDL URL

If you want to move a WSRP producer to a new WSDL URL, you can use the exportPortletClientMetadata, setWSRPProducer, and importPortletClientMetadata WLST commands to migrate the existing producer metadata to the new location.

To migrate WSRP producer metadata to a new URL endpoint:

  1. Export the producer metadata, using the WLST command exportPortletClientMetadata. For command syntax and examples, see "exportPortletClientMetadata" in the Oracle Fusion Middleware WebLogic Scripting Tool Command Reference.

  2. Change the producer's WSDL URL, using the WLST command setWSRPProducer. For command syntax and examples, see "setWSRPProducer" in the Oracle Fusion Middleware WebLogic Scripting Tool Command Reference.

  3. Import the producer metadata, using the WLST command importPortletClientMetadata. For command syntax and examples, see "importPortletClientMetadata" in the Oracle Fusion Middleware WebLogic Scripting Tool Command Reference.

23.7 Deregistering Producers

You can deregister producers at any time but, before doing so, consider any impact to the WebCenter application as portlets associated with a deregistered producer no longer work. Check the Portlets Producer Invocation metric to see how frequently the producer is being used. For more information, see Section 36.2, "Viewing Performance Information."

When you deregister a producer, registration data is removed from both the WebCenter application and the remote producer:

  • WebCenter application - The producer connection is deleted and producer metadata is also deleted.

  • Remote producer - Portlet instances are deleted (not the portlets themselves).

Portlet instances are not removed from WebCenter application pages. In place of the portlet, WebCenter users see a "Portlet unavailable" message.

Note:

Consider deleting the external application associated with this portlet producer if the application's sole purpose was to support this producer. See Section 25.5, "Deleting External Application Connections."

This section includes the following subsections:

23.7.1 Deregistering Producers Using Fusion Middleware Control

To deregister a portlet producer:

  1. Log in to Fusion Middleware Control and navigate to the home page for your WebCenter Portal application (or WebCenter Spaces):

  2. Do one of the following:

    • For WebCenter Portal applications - From the Application Deployment menu, choose WebCenter > Service Configuration.

    • For WebCenter Spaces - From the WebCenter menu, choose Settings > Service Configuration.

  3. From the list of services on the WebCenter Service Configuration page, select Portlet Producers.

  4. Select the name of the producer you want to remove, and click Delete.

The connection details are removed. Portlets associated with this producer are no longer accessible within the WebCenter application.

23.7.2 Deregister Producers Using WLST

Use the following WLST commands to deregister portlet producer connections:

Use the following WLST commands to deregister the out-of-the-box or sample producers provided with Oracle WebCenter:

For command syntax and examples, see the Oracle Fusion Middleware WebLogic Scripting Tool Command Reference.

For information on how to run WLST commands, see Section 1.13.3.1, "Running Oracle WebLogic Scripting Tool (WLST) Commands."

23.7.3 Deregistering Producers in WebCenter Spaces

For information about deregistering portlet producers in WebCenter Spaces, see the section "Deregistering Portlet Producers" in the Oracle Fusion Middleware User's Guide for Oracle WebCenter.

23.7.4 Deregistering Producers in WebCenter Portal Applications

For information about deregistering portlet producers in WebCenter Portal applications, see the section "How to Delete a Portlet Producer" in the Oracle Fusion Middleware Developer's Guide for Oracle WebCenter.

23.8 Deploying Portlet Producer Applications

To deploy a portlet producer to an Oracle WebLogic Managed Server instance, you can use Fusion Middleware Control, Oracle WebLogic Server Administration Console, or WLST. For information on deploying a portlet producer at design-time, through Oracle JDeveloper, see the chapter "Testing and Deploying Your Portlets" in the Oracle Fusion Middleware Developer's Guide for Oracle WebCenter.

This section includes the following subsections:

For more information about deploying applications, see the chapter "Deploying Application" in Oracle Fusion Middleware Administrator's Guide.

23.8.1 Understanding Portlet Producer Application Deployment

You can deploy your portlet producer application to any Oracle WebLogic Managed Server instance that is configured to support WebCenter portlet producers. To deploy an application to a managed server, you can use Oracle Enterprise Manager Fusion Middleware Control, Oracle WebLogic Administration Console, or WLST. For more information about these administration tools, see Section 1.13, "Oracle WebCenter Administration Tools."

23.8.2 Converting a JSR 286 Portlet Producer EAR File into a WSRP EAR File

To deploy JSR 286 portlets to the WSRP Oracle Portlet Container, the portlet application EAR files must be converted into a WSRP application, which contains the necessary WSDL documents. To convert the JSR 286 portlet producer EAR file into a WSRP EAR file, run the WSRP producer predeployment tool located in the Middleware directory at WC_ORACLE_HOME/webcenter/modules/oracle.portlet.server_11.1.1, as follows:

java -jar wsrp-predeploy.jar source EAR  target EAR

For JSR 286 portlets developed with servlet version 2.3, you must specify Web proxies using the following command:

java -Dhttp.proxyHost=proxy host -Dhttp.proxyPort=proxy port -jar
wsrp-predeploy.jar source EAR target EAR 

where:

  • proxy host is the server to which your producer has been deployed.

  • proxy port is the HTTP Listener port.

  • wsrp-predeploy.jar is located in the WC_ORACLE_HOME/webcenter/modules/oracle.portlet.server_11.1.1 directory.

  • source EAR is the name of the JSR 286 EAR file.

  • target EAR file is the name of the new EAR file to be created. If the file name for the targeted EAR file is not specified, then a new EAR file called WSRP-source EAR is produced.

In the following example Web proxy is specified:

java -Dhttp.proxyHost=myhttpproxy.com -Dhttp.proxyPort=80 -jar wsrp-predeploy.jar wsrp-samples.ear

This example produces WSRP-wsrp-samples.ear.

The wsrp-predeploy.jar predeployment tool makes all the necessary changes to a JSR 286 portlet to be able to deploy it to the Oracle portlet container and expose it as a WSRP producer. Here are some examples of what the predeployment tool does:

  • Creates the wsdldeploy directory in the java.io.tmpdir folder.

    • On UNIX, the default value of this property is /tmp or /var/tmp

    • On Microsoft Windows, the default value of this property is c:\temp.

  • Unpacks the EAR file into wsdldeploy/EAR.

  • Unpacks the WAR files into wsdldeploy/[warfilename.war]/.

  • Inserts WEB-INF/WSDLs into the unpacked application.

  • Modifies WEB-INF/web.xml in the unpackaged WAR files.

  • Inserts or modifies WEB-INF/webservices.xml in the WAR files.

  • Inserts or modifies WEB-INF/oracle-webservices.xml in the WAR files.

  • Repackages the WARs and builds a new EAR file.

23.8.3 Deploying Portlet Producer Applications Using Oracle JDeveloper

You can deploy portlet applications to an Oracle WebLogic Managed Server instance directly from the development environment using Oracle JDeveloper, if you have the necessary credentials to access the WebLogic server. For more information, see the section "Deploying a Portlet Application to an Oracle WebLogic Managed Server Instance" in the Oracle Fusion Middleware Developer's Guide for Oracle WebCenter.

23.8.4 Deploying Portlet Producer Applications Using Fusion Middleware Control

For information about deploying a portlet producer application using Fusion Middleware Control, see Section 7.1.6.4, "Deploying Applications Using Fusion Middleware Control."

23.8.5 Deploying Portlet Producer Applications Using Oracle WebLogic Server Administration Console

For information about deploying a portlet producer application using Oracle WebLogic Server Administration Console, see Section 7.1.6.6, "Deploying Applications Using the WLS Administration Console."

23.8.6 Deploying Portlet Applications Using WLST

For information on deploying a portlet application using the WLST command, see Section 7.1.6.5, "Deploying Applications Using WLST."

23.9 Troubleshooting Portlet Producer Issues

This section includes the following sub sections:

23.9.1 Producer Registration Fails for a WebCenter Portal Application

This section describes producer registration and portlet unavailability issues.

Problem

You are unable to register a WSRP producer.

Solution

Ensure the following:

  • Back-end producer is up and running. To test the producer, access the WSDL URL of the producer through a browser window. See, Section 23.3, "Testing WSRP Producer Connections."

  • Producer application is packaged accurately. If not, then register the producer at design time (in JDeveloper), as described in the section "Registering Portlet Producers with a WebCenter Portal Application" in the chapter "Consuming Portlets" in Oracle Fusion Middleware Developer's Guide for Oracle WebCenter, and redeploy the application, as described in Section 7.1, "Deploying WebCenter Portal Applications." After redeployment, verify that the packaged application includes the MBean, ProducerManager:

    1. In Fusion Middleware Control, from the Application Deployment menu, select System MBean Browser.

    2. In the Navigator, expand Application Defined MBeans > oracle.webcenter.portlet > Application: application_name > Producer Manager > Producer Manager.

  • PortletServletContextListener is added to the web.xml file.

    For applications that support post deployment registration of producers, the producer must be registered at least once at design time. This adds PortletServletContextListener to the web.xml file, which registers the appropriate runtime MBeans to enable post deployment registration of producers. For example, see the text in bold in the following web.xml snippet:

    <listener>
       <description>
          WebCenter Portlet Context Listener
       </description>
       <display-name>
          WebCenterPortletContextListener
       </display-name>
       <listener-class>
          oracle.webcenter.portlet.listener.PortletServletContextListener
       </listener-class>
    </listener>
    

23.9.2 Portlet Unavailable: WSM-00101 Exception

Setting up the User Name with Password token profile in a WSRP portlet producer throws the exception WSM-00101.

Problem

If you configure the User Name with Password Token profile for a WSRP producer through Fusion Middleware Control (or WLST) while portlets associated with this producer are in use, the portlets display the following exception in the WebCenter application:

oracle.wsm.common.sdk.WSMException: WSM-00101: 
The specified Keystore file
/keys/user_projects/domains/pv_0309/config/fmwconfig/default-keystore.jks
cannot be found; it either does not exist or its path is not included in the application classpath.

Solution

Ensure that you have configured the default keystore in your portlet producer. For information, see Section 33.1.3, "Setting Up the Keystores."