In some CG appliance environments, a RPC Communication error shows, opening CAF console, when selecting: - Digital Certificates - System Services - Product or Online Upgrade
****output****** com.google.gwt.user.client.rpc.IncompatibleRemoteServiceException: Type 'com.google.gwt.user.client.rpc.XsrfToken' was not assignable to 'com.google.gwt.user.client.rpc.IsSerializable' and did not have a custom field serializer. For security purposes, this type will not be deserialized.
Resolution
One step before following below instructions, you need to take a backup of root.war file. And only then follow the steps as mentioned.
1. Goto this folder: cd /opt/novell/common-service/webapps
2. Extract root.war file: jar xvf root.war
3. Edit the BaseTemplate.jsp file:
vi WEB-INF/jsp/BaseTemplate.jsp Add the following lines <meta name="gwtCsrfName" content="${_csrf.parameterName}" /> <meta name="gwtCsrfToken" content="${_csrf.token}" />
After adding the GwtModule section should be like this:
<%-- GWT module, included when a gwtPresenter is provided in the tiles config file. This will cause a client-side Presenter class (annotated with @NameToken("GWT_PRESENTER_NAME") to be called. --%> <tiles:useAttribute id="gwtPresenter" name="gwtPresenter" /> <c:if test="${!empty gwtPresenter}"><!-- GWT Module --> <meta name="gwt:property" content="locale=en" /> <%-- TODO: Determine this at runtime --%> <meta name="gwtPresenter" content="${gwtPresenter}" /> <meta name="gwtCsrfName" content="${_csrf.parameterName}" /> <meta name="gwtCsrfToken" content="${_csrf.token}" /> <script type="text/javascript" language="javascript" src="${ctxPath}/resources/gwt/GwtModule/GwtModule.nocache.js"></script> <!-- / GWT Module --> </c:if>
4. Recreate root.war file: jar cvf root.war META-INF WEB-INF resources