Oracle® Application Server Portal Developer's Guide
10g Release 2 (10.1.4) B14135-02 |
|
Previous |
Next |
This appendix describes common problems that you might encounter when using OracleAS Portal and explains how to solve them. It contains the following topics:
Note: Throughout this chapter, you will see references to ORACLE_HOME. ORACLE_HOME represents the full path of the Oracle home, and is used in cases where it is easy to determine which Oracle home is referenced. The following conventions are used in procedures where it is necessary to distinguish between the middle tier, OracleAS Infrastructure, or Oracle Application Server Metadata Repository Oracle home:
|
This section describes common problems and solutions for all portlets. It contains the following topic:
When using the JavaScript document.write()
method in conjunction with a Mozilla browser, you may find that portlet refresh does not work.
Problem
When using a Mozilla browser, such as Firefox, the document.write()
method causes portlet refresh to no longer work as expected.
Solution
Avoid using document.write()
in your output if you also want portlet refresh to work on Firefox. If this is not possible, you can choose to have the portlet not display the Refresh and Restore icons during rendering. You can also turn off portlet refresh and restore at the region level.
After upgrading from an earlier release to Release 10.1.4, you may find unformatted HTML appearing in your portlets, for example, in the portlet title.
Problem
When viewing a portlet, you see raw HTML. For example, you might see the following in a portlet title:
<b>Oracle Application Server 10<i>g</i> Collateral</b>
when what you expected to see was:
Oracle Application Server 10g Collateral
To protect against cross site scripting (XSS) attacks, OracleAS Portal Release 10.1.4 escapes all user input by default. Thus, some HTML that was formatted in earlier releases now appears unformatted because it has been escaped to plain text.
Solution
You can resolve this issue in one of two ways:
Tell your users to stop entering HTML tags as part of their input and have them enter only plain text.
Turn on compatibility mode to make your OracleAS Portal instance behave the way it did in releases prior to Release 10.1.4, that is, stop the default escaping of HTML to plain text. Note that turning on compatibility mode makes your portal instance less secure.
For more information on these options, refer to Oracle Application Server Portal Installation and Upgrade Guide.
This section describes common problems and solutions for Java portlets. It contains the following topics:
In addition to specific issues listed in the other sections of this appendix, the following general techniques can help you to troubleshoot portlet problems.
Problem 1
When accessing a portal page, the portlet does not display or displays an error message.
Solution 1
Check the application log file look for errors.
For OracleAS Portal:
MID_TIER_ORACLE_HOME/j2ee/OC4J_Portal/application-deployments/portal/OC4J_Portal_default_island_1/application.log
For a custom Web provider:
MID_TIER_ORACLE_HOME/j2ee/OC4J_instance_name/application-deployments/web_application_name/OC4J_Portal_default_island_1/application.log
Problem 2
Pertinent information that may help solve the problem is not being recorded in the log file.
Solution 2
Increase the provider's log level to produce more detailed logging information by adding the following entry to the web.xml
file:
<env-entry> <env-entry-name>oracle/portal/provider/global/log/logLevel</env-entry-name> <env-entry-value>6</env-entry-value> <env-entry-type>java.lang.Integer</env-entry-type> </env-entry>
You may also change this value for runtime by editing orion-web.xml
or updating it in the Grid Control Console. You may have to restart OC4J to ensure that the changes made to the configuration file take effect.
This section describes problems that you may encounter when installing and deploying the PDK-Java framework and samples.
You receive an error message about a Java class that does not exist. For example:
An unexpected error occurred-29540 : class oracle/webdb/provider/web/HttpProviderDispatcher does not exist (WWC-43000)
Problem
The referenced Java class object is not in the database or it is invalid. OracleAS Portal, not PDK-Java, generates the error message when it cannot execute the class.
Solution
Log into the database as your main OracleAS Portal schema. Execute a SELECT statement to verify that the object is in the schema. For example:
SELECT object_name, object_type, status FROM user_objects WHERE object_name like '%HttpProvider%'
Note that the name between quotes is case sensitive.
You should receive the following back:
/3334f18_HttpProviderDispatcher
Check for invalid or missing JAVA CLASS objects. Something could be wrong with the OracleAS Portal installation. If so, then recompiling invalid objects might help resolve it.
You receive the following error message when deploying your EAR file based on template.ear
:
Invalid J2EE application file specified - Base Exception: Cannot get xml document by parsing WEB-INF/web.xml in template.war: <Line 88, Column 14> : '--' is not allowed in comments. Resolution:
Problem
The web.xml
file contains a syntax error.
Solution
Verify that the syntax of web.xml
is correct. Some versions of web.xml
shipped in template.war
have a misplaced comment tag. Make sure that all opening comment tags, <!--
, have a matching closing tag, -->
, before starting a new comment tag.
A number of errors may occur when you attempt to register your provider. This section explains what can go wrong and how you can correct it. If your scenario is not covered below, then check the application.log
of your provider or, if that does not help, use logcfg.sql
for Portal Repository logging. For more information logcfg.sql
and application.log
, refer to the Oracle Application Server Portal Configuration Guide.
Problem 1
You receive the following error message:
Internal error (WWC-00006) The provider URL specified may be wrong or the provider is not running. (WWC-43176)
When OracleAS Portal attempts to register your provider, it must contact the listener that serves your Web portlets. If you have already accessed the provider's test page, http://
host
.
domain
:
port
/
context
/providers/
servicename
, according to the installation instructions, OracleAS Portal may not recognize your machine.
Solution 1
Make sure the machine where OracleAS Portal resides can access your Web provider listener. The easiest way to test this setup is to start a browser on the host of the OracleAS Portal repository database and try to access the provider's test page. If the browser needs a proxy setting to reach the provider, then you should set the same proxy for OracleAS Portal on the Administer tab. You should also use this proxy when registering the provider.
If your Web provider server is not part of the DNS, then add an entry in the OracleAS Portal server's host file.
If a firewall exists between the machine with the OracleAS Portal database and the machine with the provider, then make sure that the necessary port is open.
Problem 2
You receive the following error:
Internal error (WWC-00006) The provider URL specified may be wrong or the provider is not running. (WWC-43176) The following error occurred during the call to Web provider: Can't read deployment properties for service: _default (WWC-43147)
When you register a provider, you have the option of specifying a Service Id. If you do not specify anything in the Service Id field, the registration URL will not contain the service name part, http://
host
.
domain
:
port
/
context
/providers/
. Therefore, OracleAS Portal is looking for a default service, which is stored in a deployment file called _default.properties
. When this file is not found, you receive this error.
Solution 2
Make sure that you bundle a file called _default.properties
into your WAR file with the following path:
/Web-inf/deployment/
The _default.properties
file should define the default service to use when none is specified for the provider. The file should look similar to the following:
serviceClass=oracle.webdb.provider.v2.adapter.soapV1.ProviderAdapter
loaderClass=oracle.portal.provider.v2.http.DefaultProviderLoader
showTestPage=true
definition=providers/test/provider.xml
autoReload=true
testPageURI=/htdocs/testpage/TestPage.jsp
Problem 3
You receive the following error message:
Internal error (WWC-00006) The provider URL specified may be wrong or the provider is not running. (WWC-43176) The following error occurred during the call to Web provider: Can't read deployment properties for service: test (WWC-43147)
OracleAS Portal cannot find the deployment properties file for the service you specified in the Service Id field or the service name part of the registration URL, http://
host
.
domain
:
port
/
context
/providers/
servicename
. For example, suppose you received this error in response to your attempt to register your provider with the following URL:
http://host.domain:port/context/providers/test
In this case, you probably do not have a file called test.properties
in your WAR file in /Web-inf/deployment/
.
Solution 3
Make sure that you bundle a deployment properties file (for example, test.properties
) into your WAR file with the following path:
/Web-inf/deployment/
The file should look similar to the following:
serviceClass=oracle.webdb.provider.v2.adapter.soapV1.ProviderAdapter loaderClass=oracle.portal.provider.v2.http.DefaultProviderLoader showTestPage=true definition=providers/test/provider.xml autoReload=true testPageURI=/htdocs/testpage/TestPage.jsp
Problem 4
You receive the following error message:
An error occurred when attempting to call the providers register function. (WWC-43134) The provider URL specified may be wrong or the provider is not running. (WWC-43176) The following error occurred during the call to Web provider: Class oracle.portal.provider.v2.render.RenderManager has no set or add method for tag "createdOn" (WWC-43147)
Solution 4
If you are using DefaultProvider
, provider.xml
includes the element <createdOn>
. When the XML is parsed, the initialization process looks for a method called setCreatedOn
in the class representing the containing element. For example:
<renderer class="my.local.Renderer"> <createdOn>12-Mar-2001</createdOn> ... </renderer>
In this example, the initialization process looks for my.local.Renderer.setCreatedOn()
. In your case, the appropriate method does not exist, causing this error.
Problem 5
You receive an error like the following:
(WWC-00006) An unexpected error occurred: User-Defined Exception (WWC-43000) wwpro_api_provider_registry.register_provider An unexpected error occurred: ava.sql.SQLException: Inserted value too large for column:
This error indicates that your portlet has exceeded the data limit for a portlet. Each portlet is limited to 4K of data. The lengths of all of the following contribute toward this data limit:
provider name, display name, and description
parameter name, display name, and description
event name, display name, and description
Solution 5
You can take two actions to reduce the amount of data used for the portlet:
Reduce the length of the portlet's parameter and event names, display names, and descriptions.
Reduce the number of parameters and events in your portlet
Problem 6
You receive an error similar to the following when trying to register your WSRP provider:
An error occurred when attempting to call the providers register function. (WWC-43134) An error occurred during the call to the WSRP Provider: Java stack trace from root exception: java.rmi.ServerException: Internal Server Error (caught exception while handling request: oracle.webdb.wsrp.server.ContainerRuntimeException: An internal error has occurred in method <init>) at com.sun.xml.rpc.client.StreamingSender._raiseFault(StreamingSender.java:384) at com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.java:245) at oracle.webdb.wsrp.WSRP_v1_Registration_PortType_Stub.register(WSRP_v1Registration_PortType_Stub.java:183) at oracle.webdb.wsrp.client.design.v1.OraWSRP_v1_Registration_PortType.register(Unknown Source). (WWC-43273)
When you configure OC4J standalone for WSRP, you must edit data-sources.xml
. Typically, this message indicates a problem in your data-sources.xml
.
Solution 6
Review the entry you added to data-sources.xml
as per the procedure in Section 6.3.2, "Configuring OC4J Standalone". Ensure that the syntax is correct and that line breaks are occurring in the proper places. Also confirm that you can connect to the database with the specified username, password, port, host, and service name.
You added a portlet to your provider, but, when you view the provider in OracleAS Portal, you do not see the new portlet.
Problem
The most common problem is a syntactical error in provider.xml
, but it could also be that the updated provider.xml
file is not being found for some reason.
Solution
Try the following:
Examine provider.xml
. Ensure that you have two syntactically correct opening and closing portlet tags within the provider tag. For example:
<provider class="oracle.portal.provider.v2.DefaultProviderDefinition" session="true"> <portlet class="oracle.portal.provider.v2.DefaultPortletDefinition" version="1"> <id>1</id> ... </portlet> <portlet class="oracle.portal.provider.v2.DefaultPortletDefinition" version= "1"> <id>2</id> ... </portlet> </provider>
Stop and restart the listener to accept the changes to provider.xml
. Check the test page for errors. If no errors are found, then restart the OC4J instance and refresh the provider.
Check the application.log
of the provider for errors.
You received the following error message:
Error: The listener returned the following Message: 500 Portlet with id $1 doesn't exist
Problem
You removed a portlet from provider.xml
without first removing the portlet from the page. The portlet no longer appears on the Customization page and therefore you cannot remove it from the page.
Solution
Delete the region that contains the portlet. Remember, when deleting a portlet from provider.xml
, delete the portlet from the page first.
You receive the following error message:
Request URI:/jpdk/snoop/snoopcustom.jsp Exception: javax.servlet.ServletException: java.io.FileNotFoundException: C:\iAS\Apache\Apache\htdocs\jpdk\snoop\snoopcustom.jsp (The system cannot find the path specified)
Problem
You added a JSP portlet to your page. OracleAS Portal cannot locate the JSP in the file system via provider.xml
.
Solution
Confirm the file name and location and verify the information within provider.xml
.
The XML Parser may fail at times when parsing your provider.xml. This section explains what can go wrong and how you can correct it.
Problem 1
You receive the following error message:
Error: The XML parser encountered an Error, and could not complete the conversion for portlet id=150, it returned the following message: XML Parsing Error
You attempted to register your provider or display portlets on a page, and received the above error message. When altering provider.xml
, one or more of the tags were corrupt and the file cannot be parsed.
Solution 1
Review provider.xml
for errors.
Problem 2
You receive the following error message:
Error: The XML parser encountered an Error, and could not complete the conversion for portlet id=146, it returned the following message: XSL reference value missing in XML document.
You attempt to add your portlet to a page or register your provider, and you receive the above error. The portlet information within provider.xml
may be incorrect. Another possibility is that your classes cannot be located.
Solution 2
Check that no tags are missing and that they appear in the correct sequence. Verify that your class files exist and are specified correctly within provider.xml
.
You receive the following error message when trying to add portlets to a page:
Error: An unexpected error occurred: ORA-29532: Java call terminated by uncaught Java exception: Attribute value should start with quote. (WWC-43000) An unexpected error occurred: Attribute value should start with quote. at oracle.xml.parser.v2.XMLError.flushErrors(XMLError.java:205)
Problem
OracleAS Portal has an issue with provider.xml
. Most likely, an attribute within the file is corrupt.
Solution
Review provider.xml
for errors.
You receive the following error message:
ERROR TIMEOUT FOR CONTENT=timeout
Problem
You successfully registered your Web provider. When adding portlets to a page or refreshing a page with existing portlets, you receive the above error message. This error indicates that OracleAS Portal timed out trying to contact your Java portlet listener.
Solution
Verify that you can still access the sample page:
http://host:port/context/providers/servicename
You set the timeout period by adding the following init
parameters to the page servlet of OracleAS Portal's web.xml
at MID_TIER_ORACLE_HOME
/j2ee/OC4J_Portal/applications/portal/portal/WEB-INF/web.xml
. Note that this web.xml
file is for the Parallel Page Engine. For example:
<init-param> <param-name>requesttime</param-name> <param-value>1000</param-value> </init-param> <init-param> <param-name>minTimeout</param-name> <param-value>100</param-value> </init-param> <init-param> <param-name>stall</param-name> <param-value>500</param-value> </init-param>
For more information about web.xml and it's configuration parameters, refer to Oracle Application Server Portal Configuration Guide.
You may also set a timeout value for individual providers when you register them with OracleAS Portal. Note that the provider timeout value must match or exceed the minTimeout
parameter value in web.xml
in order to have any effect. For information about registering PDK-Java providers, refer to Section 6.6.2.5, "Registering and Viewing Your Portlet". For information about registering WSRP providers, refer to Section 6.4.2.4.1, "Adding Your Portlet".
You receive the following error message:
Error: The listener returned the following Message: 500
Problem
This generic message displays when OracleAS Portal receives an Internal Server Error while attempting to display your portlet. This problem might have any one of several causes.
Solution
Review the application.log
file to discover the cause of the error.
For OracleAS Portal:
MID_TIER_ORACLE_HOME/j2ee/OC4J_Portal/application-deployments/portal/OC4J_Portal_default_island_1/application.log
For a custom Web provider:
MID_TIER_ORACLE_HOME/j2ee/OC4J_instance_name/application-deployments/web_application_name/OC4J_Portal_default_island_1/application.log
HTML forms can be submitted using either the get
or post
method, but the WSRP standard only requires the consumer (portal) to use the post
method. Support of the get
method is optional according to the standard. Since portal consumers are not required to support the get
method, we highly recommended that you use the post
method when developing your portlets.
Problem
You have JPS portlets that use the get
method and they are not working correctly in OracleAS Portal. Forms with get
lose the query string in the action URL when the form is submitted. The query string is needed for the portlets to return back to the portal and for the WSRP state.
Solution
Replace the get
method with the post
method.
When you redeploy your portlets to the portlet container, all existing sessions between the producer and all of its consumers are lost. If a consumer tries to reuse an existing producer session, it may receive an error message the first time it tries to contact the producer after redeployment.
Problem
You receive an error message in your portlet the first time you access it after redeployment.
Error: Could not get markup. The cookie or session is invalid or there is a runtime exception.
Solution
To re-establish the producer's session, refresh the portal page. You won't see this error message if you are re-accessing the portlet from a new browser session because it automatically establishes a new producer session.
In Oracle JDeveloper, when you try to open the Java Portlet Wizard by choosing File > New > Web tier, the Portlets menu selection is not present.
Problem
The Java Portlet Wizard is not installed.
Solution
Install the Portal Extension to Oracle JDeveloper, as described in Section 6.4.1, "Installing the Portal Extension for Oracle JDeveloper".
When you try to compile the code for your portlet, you receive a compilation error.
Problem
The Portlet Development library is not selected.
Solution
Make sure that Portlet Development library is selected for the project. Edit your project's properties and select the Profiles > Development > Libraries entry in the pane on the right. Make sure that the Portlet Development library is listed under Selected Libraries.
In Oracle JDeveloper, the Application Server Connection Test fails with the message Connection refused: connect
.
Problem 1
OC4J is not running.
Solution 1
Make sure OC4J is up and running by typing the following URL in your browser: http://
yourhostyourdomain
:8888
Problem 2
The connection information is incorrect.
Solution 2
Verify the connection information that you provided in the Connection Setup wizard.
When accessing the provider test page with your browser, an error is shown.
Problem 1
The provider.xml
syntax is incorrect.
Solution 1
Correct the provider.xml
syntax. Refer to the PDK-Java XML Provider Definition Tag Reference document on Portal Studio:
http://portalstudio.oracle.com/pls/ops/docs/folder/community/pdk/jpdk/v2/xml_tag_reference_v2.html
Problem 2
Needed JAR files are missing from the deployment environment.
Solution 2
Search the JAR files for the missing class. When the missing JAR file is identified, you can add to the lib
directory of the application from the Oracle JDeveloper Deployment Profile. Refer to the Oracle JDeveloper Online Help System for more information about the deployment profile.
Users cannot see a Web provider, such as Omniportlet, in the Portlet Repository even though it has been registered successfully and is visible in the navigator.
Problem
The Web provider uses DBPreferenceStore
and the database information stored in data-sources.xml
is incorrect.
Solution
Correct the information in data-sources.xml
. Refresh the provider and invalidate the Portlet Repository cache.
When you access a portal page, the portlet does not display on the page.
Problem 1
The provider is not running.
Solution 1
Make sure that the provider is up and running by entering the provider registration URL in your browser's address bar.
Problem 2
The security manager for the provider is preventing the portlet from displaying.
Solution 2
In the provider definition file, provider.xml
, delete or comment out the security manager, if any.
Problem 3
The user may not have the Execute privilege for the portlet as defined on the portlet's Access page.
Solution 3
Check the privileges for the portlet and, if the user or a group the user belongs to does not have the Execute privilege, grant them access. Portlets sometimes inherit their access privileges from the provider. You can use the Navigator in OracleAS Portal to find the portlet's provider and check its access privileges, then drill down to the portlet to see its access privileges.
Problem 4
You get an error trying to display the portlet after you redeployed it.
Solution 4
Refer to Section B.2.2.12, "Portlet Displays Session Expired Message After Redeployment".
When you access a portal page, the portlet initially displays on the page but returns error messages in subsequent display attempts.
Problem
The provider session information is incorrect.
Solution
Check whether or not the provider uses sessions. If it does, edit the provider registration information to make sure that you registered it accordingly:
Login Frequency: Once per User Sessions
You should also confirm that <session>
is set to true in provider.xml
.
When you create a new provider group, the provider group is not created.
Insufficient Privilege. Please contact the administrator for privilege in Default Provider Builder Instance.
You might also receive some mod_osso
errors.
Problem 1
If you get mod_osso
errors during authentication, the most likely problem is that mod_osso
is not correctly configured on the middle tier or you have a mod_osso
registration problem.
Solution 1
For information on reregistering mod_osso
, refer to the Oracle Application Server Single Sign-On Administrator's Guide.
Problem 2
You have a problem in the jpdk
application classpath
.
Solution 2
Check the jpdk
application log for errors.
Problem 3
The user does not have the necessary privileges to access these pages.
Solution 3
Modify provideruiacls.xml
to grant the user the necessary privileges. provideruiacls.xml
has two instances, one for PDK-Java providers and one for OracleAS Portal tools (such as Omniportlet) providers:
MID_TIER_ORACLE_HOME/j2ee/OC4J_Portal/applications/jpdk/jpdk/WEB-INF/
deployment_providerui
HOME/j2ee/OC4J_Portal/applications/portalTools/providerBuilder/WEB-INF/ deployment_providerui
The following code sample illustrates how you can add users in provideruiacls.xml
:
<object name="ANY_PROVIDER" owner="providerui"> <user name="orcladmin" privilege="500"/> <user name="portal" privilege="500"/>
Attempting to display your portlet via URL generates the following error message:
500 INTERNAL SERVER ERROR
Problem
The httpProxyHost
is not defined correctly.
Solution
In general, you should replace your URL-based portlets (formerly URL Services) with Web Clipping. Refer to Chapter 5, "Creating Content-Based Portlets with Web Clipping" for more information about Web Clipping.
If for some reason you must continue to use a URL-based portlet, check the default proxy information in your provider.xml
file. For example:
<proxyInfo class="oracle.portal.provider.v1.http.ProxyInformation"> <httpProxyHost>www-proxy.us.oracle.com</httpProxyHost> <httpProxyPort>80</httpProxyPort> </proxyInfo>
Change the httpProxyHost
and httpProxyPort
proxy settings or remove these settings if you do not use proxy. Restart the OC4J instance to test if this resolves the problem.
This section provides information to help you troubleshoot problems you may encounter while using OmniPortlet.
To view errors that occur during the execution of OmniPortlet:
Open the application log file: MID_TIER_ORACLE_HOME
/j2ee/OC4J_Portal/application-deployments/portalTools/OC4J_Portal_default_island_1/application.log
or, if you are using a standalone OC4J instance: OC4J_HOME
/j2ee/home/application-deployments/portalTools/application.log
Display the HTML source (for example, in Microsoft Internet Explorer browser, choose View > Source), and locate the errors embedded in the output HTML as comments.
To alter the logging level of the OmniPortlet Provider:
Open the web.xml
file and modify the context-param
value of oracle.portal.log.LogLevel
to the possible values ranging from 1
to 8
(where 8
means debug
). The web.xml
file is located at: MID_TIER_ORACLE_HOME
/j2ee/OC4J_Portal/applications/portalTools/omniPortlet/WEB-INF/web.xml
or, if you are using a standalone OC4J instance: OC4J_HOME
/j2ee/home/applications/portalTools/omniPortlet/WEB-INF/web.xml
The OmniPortlet errors that you are most likely to encounter, and possible solutions, are:
Your OmniPortlet displays errors or does not display the correct content.
Problem 1
The URL is not active.
Solution 1
Type the URL directly in your browser address field to test its validity.
Problem 2
If a proxy server is required to reach the site, the proxy settings are not valid. The following messages may display:
Failed to open specified URL.Cannot open the URL specified because of connection timeout.
Solution 2
Check that your proxy settings are valid by clicking Edit for the HTTP Proxy Setting in the OmniPortlet Provider Test Page.
Problem 3
The message OmniPortlet timed out
displays in your OmniPortlet.
Solution 3
If a proxy server is required to reach the site, see Solution 2.
If the URL request takes a long time to process (for example, it executes a long running query), try increasing the timeout value (in seconds) in the OmniPortlet provider.xml
file in MID_TIER_ORACLE_HOME
/j2ee/OC4J_Portal/applications/portalTools/omniPortlet/WEB-INF/providers/omniPortlet
. If you change the timeout value, you also need to do the following:
Bounce your middle-tier.
Increase the provider registration Timeout value of the OracleAS Portal instances with which this provider is registered.
Problem 4
If HTTP authentication is required and the user name and password are missing or not valid, the following error message displays:
Authorization failed when connecting to the URL specified. Provide correct user name and password to connect.
Solution 4
To configure the Secured Data (Web Clipping) Repository Setting, click Edit on the OmniPortlet Provider Test Page. On the Source tab, click Edit Connection and enter a valid user name and password on the Connection Information page. To enter the connection information, the Secured Data Repository must be already be configured. To configure its settings, click Edit on the OmniPortlet Provider Test Page.
Problem 5
If opening a URL to an HTTPS site with a certificate and the certificate is identified as not valid, the following error message displays in the portlet:
SSL handshake failed for HTTPS connection to the specified URL. The certificate file needs to be augmented
.
Solution 5
See the Oracle Application Server Portal Configuration Guide.
Problem 6
If the proxy server requires authentication and the user name and password are missing or not valid, the following error message displays:
Invalid or missing user proxy login information.
Solution 6
Check that your proxy server user name and password are valid. Refer to Section B.4.5, "HTTP Error Code 407 When Clipping Outside Firewall" for more information.
After changing portlet properties in the Edit Defaults page, your portlet content is not refreshed.
Problem 1
OracleAS Web Cache invalidation is not configured properly.
Solution 1
See Section I.2.1.3 "Configuring Caching (PDK Only)" in the Oracle Application Server Portal Configuration Guide.
Problem 2
You have personalized the portlet.
Solution 2
See Section B.3.3, "Edit Defaults Changes are Not Reflected in the Personalized Portlet".
When you personalize the portlet at runtime using the Personalize link, the new property values are not reflected in the personalized version of the portlet.
Problem
When you personalize the portlet, a complete copy of the personalization object file is created. Since all properties are duplicated, subsequent modifications through Edit Defaults are not reflected in the personalized version.
Solution
To ensure the latest changes are made to the portlet, click Personalize again (after the modifications via Edit Defaults), then select the Reset to Defaults option.
This section provides information to help you troubleshoot problems you may encounter while using the Web Clipping provider or Web Clipping Studio:
By default, the logging level of Web Clipping is set to level 3, which provides information about configuration, severe errors, and warnings. This level is reasonable for day-to-day operations. To view information useful for debugging, you should set the logging level to 8.
To set the logging level, edit the web.xml
file, which is located at:
OracleHome/j2ee/OC4J_Portal/applications/portalTools/webClipping/WEB-INF
To set the level to 8 and display debugging information, set the value of the parameter oracle.portal.log.LogLevel
as follows:
<context-param> <param-name>oracle.portal.log.LogLevel</param-name> <param-value>8</param-value> </context-param>
After you make the change, restart the Web application.
Errors that occur when accessing the Test Page or executing of the Web Clipping portlet are written to one of the following files:
OC4J_HOME/j2ee/home/application-deployments/portalTools/application.log IAS_HOME/j2ee/OC4J_instance/application-deployments/portalTools/OC4J_instance_default_island_1/application.log
You can use the Web Clipping Provider Test Page to determine if the provider is functioning properly. To access the Test Page, click Web Clipping Provider from the Portal Tools Application Welcome Page, which is located at:
http://host:port/portalTools
The Provider Test Page: Web Clipping is displayed. It provides the following information:
Portlet information about the Web Clipping portlet. The Web Clipping provider contains only one portlet.
Provider initialization parameters and values.
Provider status, with links to pages for editing the configuration.
For more information about using the Test Page, see the "Administering Web Clipping" appendix in the Oracle Application Server Portal Configuration Guide.
You encounter difficulties making or maintaining connections to the Web site containing the clipping.
Problem 1
If you cannot access the Web site using Web Clipping Studio, you may be using an incorrect URL.
Solution 1
To be sure a URL is correct, test the URL that you want to clip in a browser before you attempt to clip it. Also test the URL to be sure that it is accessible from the provider middle tier.
The connection times out when attempting to browse to any Web site and your environment uses a proxy server to connect to HTTP servers outside a firewall.
Solution 2
Make sure that the proxy servers are configured correctly.
To configure the proxy servers, go to the Web Clipping Provider Test Page, as described in Section B.4.3, "Checking the Status of the Provider with the Test Page". In the Web Clipping Provider Test Page, click Edit in the Actions column of the HTTP Proxy row. In the Edit Provider page, specify the HTTP Proxy Host and the HTTP Proxy Port for the HTTP Proxy.
For access to servers inside the firewall, you can specify a list of domain names that need not go through the firewall by selecting No Proxy for Domains beginning with and entering the URL. You do not need to restart OC4J for the new settings to take effect.
For more information about configuring proxy servers, see the "Administering Web Clipping" appendix of the Oracle Application Server Portal Configuration Guide.
Problem 3
Your configuration includes a load balancer and you experience difficulty making or maintaining connections while attempting to add a clip to a Web Clipping portlet.
Solution 3
The configuration was not set up correctly:
If multiple OC4J instances are set up behind a load balancer, the Web Clipping Repository and HTTP proxy must be configured identically on all OC4J instances before you join them to the load balancer.
Web clippings have definitions that must be stored persistently in the Web Clipping Repository hosted by an Oracle Database server. In a multiple middle-tier environment, all instances of OC4J must store definitions in the same repository.
In addition, all instances of OC4J must have identical HTTP proxy configurations.
The Load Balancer must be session-enabled. If it is not, the first request connects, but subsequent requests, which may be routed to a different instance, fail.
For more information about configuring with a load balancer, see the "Performing Advanced Configuration" chapter of the Oracle Application Server Portal Configuration Guide.
Problem 4
You use a reverse proxy, but cannot make a connection.
Solution 4
Make sure that the reverse proxy server is configured correctly. See the "Performing Advanced Configuration" chapter of the Oracle Application Server Portal Configuration Guide for information about configuring a reverse proxy.
Problem 5
You cannot connect and the error log contains a message about denying logon to the database. (See Section B.4.1, "Setting Logging Levels" for information about the error log.)
Solution 5
The PORTAL schema password for the infrastructure database may have been modified manually and it may not match the password stored in Oracle Internet Directory. Refer to the Oracle Internet Directory Administrator's Guide for more information about setting the password.
The proxy servers are configured for proxy authentication and you receive HTTP error code 407 when you attempt to clip a page outside the firewall.
Problem
The proxy servers are configured for proxy authentication, but you have not configured proxy authentication.
Solution
You must manually configure proxy authentication. Web Clipping supports both global proxy and per-user authentication. You can specify the realm of the proxy server and whether all users login automatically with a provided user name and password, each user logs in with an individual user name and password, or all users log in with a specified user name and password. For more information about configuring proxy authentication, see the "Administering Web Clipping" appendix of the Oracle Application Server Portal Configuration Guide.
You can connect to the Web site, but you cannot clip the page.
Problem
The page may be overpopulated with IFrames.
Solution
View the page in a browser and look at the page source. If it contains IFrames, start browsing in Web Clipping Studio using the URL pointed to by the IFrame src
attribute.
Images in a Web clipping are not retrieved with the rest of the clipping.
Problem
Because images are treated as links (using the src
attribute of the IMG
tag), images from clipped sites are served directly from the original sites. If the images require that you enable proxy settings during creation of the clipping, then disabling the browser proxy setting disables the viewing of the images in a clipping.
Solution
Enable proxy settings in the browser.
You can migrate URL-based portlets that are stored in a provider.xml
file to Web Clipping portlets. This section explains how to troubleshoot issues that arise as you migrate your portlets to Web Clipping portlets. For more information on the migration process itself, refer to Section 5.5, "Migrating from URL-Based Portlets".
When you run the migration tool, you receive the following exception:
Exception in thread "main" java.io.FileNotFoundException: /wrongpath/somservice.properties (No such file or directory) at java.io.FileInputStream.open(Native Method) at java.io.FileInputStream.<init>(FileInputStream.java:103) at oracle.webdb.wcs.client.urlservices.UrlServicesMigrator.importService (UrlServicesMigrator.java:631) at oracle.webdb.wcs.client.urlservices.UrlServicesMigrator.main (UrlServicesMigrator.java:724) at oracle.webdb.wcs.WcWebdbMain.main(WcWebdbMain.java:60)
Problem
The files you specified for the deployment properties file for either the URL-based portlets service or the Web Clipping Portlet service do not exist.
Solution
Verify the path to both service deployment properties files in the argument list to see if they point to the correct location.
When you run the migration tool, you receive the following exception:
Exception in thread "main" java.lang.NullPointerException at java.util.Hashtable.put(Hashtable.java:375) at java.util.Properties.setProperty(Properties.java:97) at oracle.webdb.wcs.client.urlservices.UrlServicesMigrator.setRepository (UrlServicesMigrator.java:415) at oracle.webdb.wcs.client.urlservices.UrlServicesMigrator.main (UrlServicesMigrator.java:733) at oracle.webdb.wcs.WcWebdbMain.main(WcWebdbMain.java:58)
Problem
The Repository settings are not configured for the Web Clipping Provider.
Solution
See Section 5.5.1, "Preparing for Migration" for information about steps you must take before running the migration tool.
When you run the migration tool, you receive the following error:
Error: Target provider.xml is already migrated.
Problem
The provider.xml
file pointed to by the URL-based portlets service deployment properties file has already been migrated. The provider definition class specified in the provider.xml
file is already in WcProviderDefinition.
Solution
If you want to redo the migration, rename your service in both the deployment properties file and the entire directory name under WEB-INF/providers and then run the migration again.
When you run the migration tool, you receive the following error:
Error: Can't migrate provider.xml with class <someclass>
Problem
The provider.xml
file pointed to by the URL-based portlets service deployment properties file contains a provider class name that does not match the one used by URL-based portlets. Specifically, the Provider class name specified in the file is not oracle.portal.provider.v2.http.URLProviderDefinition
. The migration tool is intended to migrate URL-based Portlet provider definitions, not any other kind of provider definitions. Even those classes which sub-class from URL-based portlets provider definition will not be correctly migrated.
Solution
You cannot migrate this service.
You can find more solutions on Oracle MetaLink, http://metalink.oracle.com
. If you do not find a solution for your problem, log a service request.
See Also: Oracle Application Server Release Notes, available on the Oracle Technology Network:http://www.oracle.com/technology/documentation/ias.html
|