WebSphere eXtreme Scale Administration Guide > Configure WebSphere eXtreme Scale



Troubleshoot XML configuration


Occasionally, when you configure eXtreme Scale, you can encounter unexpected behavior in XML configuration.

The following sections are various XML configuration problems that can occur.


Mismatched deployment policy and ObjectGrid XML files

The deployment policy and ObjectGrid XML files must match. If they do not have matching ObjectGrid names and map names, errors occur.


Incorrect backingMap and map references

If the backingMap list in an ObjectGrid XML file does not match the map references list in a deployment policy XML file, an error occurs on the catalog server.

For example, the following ObjectGrid XML file and deployment policy XML file are used to start a container process. The deployment policy file has more map references than are listed in the ObjectGrid XML file.

ObjectGrid.xml - incorrect example

<?xml version="1.0" encoding="UTF-8"?>
<objectGridConfig xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://ibm.com/ws/objectgrid/config ../objectGrid.xsd"
 xmlns="http://ibm.com/ws/objectgrid/config">
   
<objectGrids>
       
<objectGrid name="accounting">
           
<backingMap name="payroll" readOnly="false" />
       
</objectGrid>
   
</objectGrids>
</objectGridConfig>

deploymentPolicy.xml - incorrect example

<?xml version="1.0" encoding="UTF-8"?>
<deploymentPolicy xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://ibm.com/ws/objectgrid/deploymentPolicy 
 ../deploymentPolicy.xsd"
 xmlns="http://ibm.com/ws/objectgrid/deploymentPolicy">
   
<objectgridDeployment objectgridName="accounting">
       
<mapSet name="mapSet1" numberOfPartitions="4" minSyncReplicas="1" 
                    maxSyncReplicas="2" maxAsyncReplicas="1">
           
<map ref="payroll"/>
           
<map ref="ledger"/>
       
</mapSet>
   
</objectgridDeployment>
</deploymentPolicy>

Messages

An ObjectGridException occurs with a caused by exception of IncompatibleDeploymentPolicyException. For the preceding example, the exception is displayed as the following message:

com.ibm.websphere.objectgrid.IncompatibleDeploymentPolicyException: The ledger map reference in the mapSet1 mapSet of accounting objectgridDeployment does not reference a valid backingMap from the ObjectGrid XML.

If the deployment policy is missing map references to backingMaps listed in the ObjectGrid XML file, an ObjectGridException also occurs with a caused by exception of IncompatibleDeploymentPolicyException. For example:

com.ibm.websphere.objectgrid.IncompatibleDeploymentPolicyException: The accounting objectGrid contains the employee backingMap in the ObjectGrid XML. This map is not referenced in a mapSet within the accounting objectGridDeployment in the deployment policy XML.

Problem

The backingMap list in the ObjectGrid XML file and the map references in the deployment policy must match.

Solution

Determine which list is correct for the environment and correct the XML file that contains the incorrect list.


Incorrect ObjectGrid names

The name of the ObjectGrid is referenced in both the ObjectGrid XML file and the deployment policy XML file.

Message

An ObjectGridException occurs with a caused by exception of IncompatibleDeploymentPolicyException. An example follows.

Caused by: com.ibm.websphere.objectgrid.IncompatibleDeploymentPolicyException: The objectgridDeployment with objectGridName accountin does not have a corresponding objectGrid in the ObjectGrid XML.

Problem

The ObjectGrid XML file is the master list of ObjectGrid names. If a deployment policy has an ObjectGrid name that is not contained in the ObjectGrid XML file, an error occurs.

Solution

Verify the spelling of the ObjectGrid name. Remove any extra names, or add missing ObjectGrid names, to the ObjectGrid XML or deployment policy XML files. In the example message, the objectGridName is misspelled as "accountin" instead of "accounting".


XML value of attribute is not valid

Some of the attributes in the XML file can only be assigned certain values. These attributes have acceptable values enumerated by the schema. The following list provides some of the attributes:

If one of these attributes is assigned an invalid value, XML validation fails. In the following example XML file, an incorrect value of INVALID_COPY_MODE is used:

INVALID_COPY_MODE example
<?xml version="1.0" encoding="UTF-8"?>
<objectGridConfig xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://ibm.com/ws/objectgrid/config ../objectGrid.xsd"
 xmlns="http://ibm.com/ws/objectgrid/config">
   
<objectGrids>
       
<objectGrid name="accounting">
           
<backingMap name="payroll" copyMode="INVALID_COPY_MODE"/>
       
<objectGrid/>
  
</objectGrids>
</objectGridConfig>

The following message appears in the log.

CWOBJ2403E: The XML file is invalid. A problem has been detected with < null > at line 5. The error message is cvc-enumeration-valid: Value 'INVALID_COPY_MODE' is not facet-valid with respect to enumeration '[COPY_ON_READ_AND_COMMIT, COPY_ON_READ, COPY_ON_WRITE, NO_COPY, COPY_TO_BYTES]'. It must be a value from the enumeration.


Missing attributes or tags

If an XML file is missing the correct attributes or tags, errors occur. For example, the following ObjectGrid XML file is missing the closing < /objectGrid > tag:

missing attributes - example XML

<?xml version="1.0" encoding="UTF-8"?>
<objectGridConfig xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://ibm.com/ws/objectgrid/config ../objectGrid.xsd"
 xmlns="http://ibm.com/ws/objectgrid/config">
   
<objectGrids>
       
<objectGrid name="accounting">
           
<backingMap name="payroll" />

  
</objectGrids>
</objectGridConfig>

The following message appears in the log.

CWOBJ2403E: The XML file is invalid. A problem has been detected with < null > at line 7. The error message is The end-tag for element type "objectGrid" must end with a '>' delimiter.

An ObjectGridException about the invalid XML file occurs with the name of the XML file


Syntax errors

If an XML file is formatted with incorrect or missing syntax, the CWOBJ2403E appears in the log. For example, the following message is displayed when a quote is missing on one of the XML attributes.

CWOBJ2403E: The XML file is invalid. A problem has been detected with < null > at line 7. The error message is Open quote is expected for attribute "maxSyncReplicas" associated with an element type "mapSet".

An ObjectGridException about the invalid XML file also occurs.


Referencing a nonexistent plug-in collection

When using XML to define BackingMap plug-ins, the pluginCollectionRef attribute of the backingMap element must reference a backingMapPluginCollection. The pluginCollectionRef attribute must match the ID of one of the backingMapPluginCollection elements.

Message

If the pluginCollectionRef attribute does not match any ID attributes of any of the backingMapPluginConfiguration elements, the following message, or one that is similar, is displayed in the log.

[7/14/05 14:02:01:971 CDT] 686c060e XmlErrorHandl E CWOBJ9002E:
This is an English only Error message: Invalid XML file. Line: 14; URI: 
null; Message: Key 'pluginCollectionRef' with
value 'bookPlugins' not found for identity constraint of 
element 'objectGridConfig'.

Problem

The following XML file is used to produce the error. Notice that the name of the BackingMap book has its pluginCollectionRef attribute set to bookPlugins, and the single backingMapPluginCollection has an ID of collection1.

referencing a non-existent attribute XML - example

<?xml version="1.0" encoding="UTF-8"?>
<objectGridConfig xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://ibm.com/ws/objectgrid/config../objectGrid.xsd"
 xmlns="http://ibm.com/ws/objectgrid/config">
  
<objectGrids>
     
<objectGrid name="bookstore">
        
<backingMap name="book" pluginCollectionRef="bookPlugin" />
     
</objectGrid>
  
</objectGrids>
  
<backingMapPluginCollections>
   
<backingMapPluginCollection id="collection1">
    
<bean id="Evictor"
       className="com.ibm.websphere.objectgrid.plugins.builtins.LRUEvictor" />
    
</backingMapPluginCollection>
   
</backingMapPluginCollections>
</objectGridConfig>

Solution

To fix the problem, ensure that the value of each pluginCollectionRef matches the ID of one of the backingMapPluginCollection elements. Simply change the name of pluginCollectionRef to collection1 to not receive this error. Alternatively, change the ID of the existing backingMapPluginCollection to match the pluginCollectionRef, or add an additional backingMapPluginCollection with an ID that matches the pluginCollectionRef to correct the error.


Validate XML without support of an implementation

The IBM Software Development Kit (SDK) Version 1.4.2 contains an implementation of some Java™ API for XML Processing (JAXP) function to use for XML validation against a schema.

When using an SDK that does not contain this implementation, attempts to validate might fail.

To validate XML by using an SDK that does not contain this implementation, download Apache Xerces, and include its Java archive (JAR) files in the classpath.

When you attempt to validate XML with an SDK that does not have the necessary implementation, the log contains the following error:

XmlConfigBuil d XML validation is enabled
SystemErr R com.ibm.websphere.objectgrid
SystemErr R at com.ibm.ws.objectgrid.ObjectGridManagerImpl.getObjectGridConfigurations
    (ObjectGridManagerImpl.java:182)
SystemErr R at com.ibm.ws.objectgrid.ObjectGridManagerImpl.createObjectGrid(ObjectGridManagerImpl.java:309)
SystemErr R at com.ibm.ws.objectgrid.test.config.DocTest.main(DocTest.java:128)
SystemErr R Caused by: java.lang.IllegalArgumentException: No attributes are implemented
SystemErr R at org.apache.crimson.jaxp.DocumentBuilderFactoryImpl.setAttribute
    (DocumentBuilderFactoryImpl.java:93)
SystemErr R at com.ibm.ws.objectgrid.config.XmlConfigBuilder.<init>XmlConfigBuilder.java:133)
SystemErr R at com.ibm.websphere.objectgrid.ProcessConfigXML$2.runProcessConfigXML.java:99)...

The SDK that is used does not contain an implementation of JAXP function that is necessary to validate XML files against a schema.

To avoid this problem, after you download Xerces and include the JAR files in the classpath, you can validate the XML file successfully.



Parent topic

Configure WebSphere eXtreme Scale

Related reference

Deployment policy descriptor XML file

objectGrid.xsd file

deploymentPolicy.xsd file


+

Search Tips   |   Advanced Search