> For the complete documentation index, see [llms.txt](https://docs.opshub.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.opshub.com/v7.237/manage/administrator/allow-additional-classes-for-processing.md).

# Allow Additional Classes For Processing

### Overview

Sometimes your integration may use custom objects or third-party libraries that are not recognized by <code class="expression">space.vars.OIM</code> by default. When this happens, the integration can fail with error:

```
com.thoughtworks.xstream.security.ForbiddenClassException
```

You can configure the `allowed.xstream.classes` property to explicitly authorize trusted classes or packages that are required for your integration to work correctly.

> Only allow classes or packages from trusted sources.

### Availability

This configuration is supported from <code class="expression">space.vars.OIM</code> **version 7.234** onwards.

### When to Use This Property

Configure `allowed.xstream.classes` only when:

* Your integration relies on a third-party library that is not included in <code class="expression">space.vars.OIM</code>'s default allow list.
* An integration job fails with a `com.thoughtworks.xstream.security.ForbiddenClassException` error.
* You have reviewed the blocked class and confirmed it is from a trusted source.

### Applying the Configuration

1. Stop the <code class="expression">space.vars.OIM</code> server.
2. Go to <<code class="expression">space.vars.OIM</code> Installation Path>/AppData/OpsHubData
3. Open the `OIM_Config.properties` file.
4. Add or update the `allowed.xstream.classes` property with the required values. (Check the [Sample Scenario](#sample-scenario) section to know more.)
5. Save the file.
6. Restart the <code class="expression">space.vars.OIM</code> server.

### Sample Scenario

A custom connector uses objects from the Apache Commons library. During synchronization, <code class="expression">space.vars.OIM</code> blocks the object because it is not part of the default trusted list. By adding the required class or package to the allowed.xstream.classes property, <code class="expression">space.vars.OIM</code> can process the data successfully and the integration continues without errors.

Below are the samples of how the `allowed.xstream.classes` property value can be set:

#### Allow Specific Classes

```properties
allowed.xstream.classes=org.apache.commons.collections.BidiMap,org.apache.commons.collections.bidimap.DualHashBidiMap
```

#### Allow an Entire Package Hierarchy

```properties
allowed.xstream.classes=org.apache.commons.**
```

#### Allow Multiple Classes and Packages

```properties
allowed.xstream.classes=com.example.CustomObject,com.example.model.**,org.apache.commons.collections.BidiMap
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.opshub.com/v7.237/manage/administrator/allow-additional-classes-for-processing.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
