---
title: Troubleshoot node development
description: This page offers solutions to issues that may occur when developing authentication nodes.
component: pingam
version: 7.2
page_id: pingam:auth-nodes:troubleshooting
canonical_url: https://docs.pingidentity.com/pingam/8.1/auth-nodes/troubleshooting.html
llms_txt: https://docs.pingidentity.com/pingam/llms.txt
docs_for_agents: https://developer.pingidentity.com/build-with-ai/docs-for-agents.md
superseded_by: https://docs.pingidentity.com/pingam/8.1/auth-nodes/troubleshooting.html
---

# Troubleshoot node development

This page offers solutions to issues that may occur when developing authentication nodes.

1. *I installed my node in AM. Why doesn't it appear in the authentication tree designer?*

   The `authNodeName.properties` file for your node must include a `nodeDescription` property to ensure that that your node appears in the authentication tree designer.

   AM uses the `nodeDescription` property value as the name of your node.

2. *How do I get new attributes to appear in the node after the service has been loaded once?*

   See [Upgrade nodes and change node configuration](node-upgrade.html).

3. *What type of exception should I throw so that the framework handles it gracefully?*

   To display a custom message to the user, exceptions must be handled inside the node and an appropriate information callback returned.

   For more information, see [Handle errors](core-error-handling.html).

4. *Do I need multiple projects/jars for multiple nodes?*

   No - you can bundle multiple nodes into one plugin, which should be deployed in one single `.jar` file.

   See [Build and install nodes](build-install-nodes.html).

5. *What ForgeRock utilities exist for me to use to assist in the node building experience?*

   A number of utilities are available for use in your integrations and custom nodes.

   See the [AM Public API Javadoc](../_attachments/apidocs).

6. *Transient State vs Shared State - When should I use one or the other?*

   Transient state is used for secret values that should not persist.

   See [Store values in shared tree state](core-action.html#accessing-tree-state).

7. *If my service collects a username in a different way from the [Username Collector node](../authentication-guide/auth-node-configuration-hints.html#auth-node-username-collector), where do I put the username from the framework to get the principal?*

   See [Access an identity's profile](core-action.html#accessing-user-profile).

8. *Where do I go for examples of authentication nodes?*

   There are many public examples of ForgeRock community nodes at <https://github.com/ForgeRock>.

   Examples of community nodes written by third parties can be found on the [Marketplace](https://backstage.forgerock.com/marketplace/?t=FSdHWcZyspKpWLfWsRSAnMuH-duplrBx\&sort=updateTimestamp) website.

   For source access to the authentication nodes builtin to AM, see [How do I access and build the sample code provided for PingAM?](https://support.pingidentity.com/s/article/How-do-I-access-and-build-the-sample-code-provided-for-PingAM) in the *Knowledge Base*.
