[BUG]: Subform compiler #1277

Closed
opened 2025-12-22 08:37:41 +00:00 by Antonio Scuotto · 2 comments

What Happened?

When creating a subform and linking a structured field inside it (for example, an SQL field or other structured/dynamic fields), the Joomla Component Builder compiler throws a fatal error and stops the compilation process.

The expected behavior is that the compiler correctly handles structured fields inside subforms and completes the component compilation without errors.

Compiler error returned:

Class "VDM\Joomla\Componentbuilder\Compiler\Creator\GuidHelper" not found

This error suggests that a required dependency is missing or not properly loaded during the subform field normalization process.

Steps to reproduce the Bug

  1. Create a subform with a fieldCreate a new Subform field in Joomla Component Builder.
  2. Inside the subform, add a structured field (e.g. an SQL field or another structured/dynamic field).
  3. Save the field and include it in a fieldset or view of the component.
  4. Start the component compilation process.
  5. The compiler stops and returns the following error:
    Class "VDM\Joomla\Componentbuilder\Compiler\Creator\GuidHelper" not found
  6. The compilation fails and the component is not generated.

Which Joomla version are you compiling in?

Joomla! 5.3.3

Which PHP version are you compiling in?

8.1.33

Which Joomla versions are you targeting?

Joomla! 5.3.3

Which PHP version are you targeting?

8.1.33

Which Web server is JCB running on?

Apache/2.4.65

Which Relational Database is JCB running on?

Mysql 8.4.3

Which OS is JCB running on?

Linux

Which JCB version are you using?

Linux

Where in JCB did this issue occur?

Compilation of a component

On which browsers did you encounter the issue?

Chrome

Additional Comments

No response

### What Happened? When creating a subform and linking a structured field inside it (for example, an SQL field or other structured/dynamic fields), the Joomla Component Builder compiler throws a fatal error and stops the compilation process. The expected behavior is that the compiler correctly handles structured fields inside subforms and completes the component compilation without errors. Compiler error returned: `Class "VDM\Joomla\Componentbuilder\Compiler\Creator\GuidHelper" not found ` This error suggests that a required dependency is missing or not properly loaded during the subform field normalization process. ### Steps to reproduce the Bug 1. Create a subform with a fieldCreate a new Subform field in Joomla Component Builder. 2. Inside the subform, add a structured field (e.g. an SQL field or another structured/dynamic field). 3. Save the field and include it in a fieldset or view of the component. 4. Start the component compilation process. 5. The compiler stops and returns the following error: `Class "VDM\Joomla\Componentbuilder\Compiler\Creator\GuidHelper" not found` 6. The compilation fails and the component is not generated. ### Which Joomla version are you compiling in? Joomla! 5.3.3 ### Which PHP version are you compiling in? 8.1.33 ### Which Joomla versions are you targeting? Joomla! 5.3.3 ### Which PHP version are you targeting? 8.1.33 ### Which Web server is JCB running on? Apache/2.4.65 ### Which Relational Database is JCB running on? Mysql 8.4.3 ### Which OS is JCB running on? Linux ### Which JCB version are you using? Linux ### Where in JCB did this issue occur? Compilation of a component ### On which browsers did you encounter the issue? Chrome ### Additional Comments _No response_
Antonio Scuotto added the Bug label 2025-12-22 08:37:41 +00:00
Antonio Scuotto changed title from [BUG]: to [BUG]: Subform compiler 2025-12-22 08:38:01 +00:00
Owner

From the error and the context, this is most likely not a subform issue but a temporary failure while JCB is resolving a required Power (in this case the GuidHelper). If the environment is offline or connectivity is unstable, the Power may not be fetched or loaded correctly, which can result in this kind of “class not found” error.

Please try the following:

  1. Compile more than once
    In some cases, the required Power is fetched successfully on a subsequent compile attempt.

  2. Check connectivity
    If you are compiling without internet access, ensure that all required Powers are already available locally. Missing Powers in offline mode can lead to this error.

  3. Browser
    We strongly recommend compiling with Firefox or LibreWolf. We have seen repeated cases where Chrome interferes with the compiler through aggressive caching and request handling. The generated components will work in any browser, but the compiler itself is most reliable in Firefox-based browsers.

  4. JCB version
    The JCB version in use was not mentioned. Please confirm which version you are running. Several issues related to Power loading were fixed and improved in later releases. If you are not on the latest JCB version, please upgrade and test again.

From the error and the context, this is most likely not a subform issue but a temporary failure while JCB is resolving a required *Power* (in this case the GuidHelper). If the environment is offline or connectivity is unstable, the Power may not be fetched or loaded correctly, which can result in this kind of “class not found” error. Please try the following: 1. **Compile more than once** In some cases, the required Power is fetched successfully on a subsequent compile attempt. 2. **Check connectivity** If you are compiling without internet access, ensure that all required Powers are already available locally. Missing Powers in offline mode can lead to this error. 3. **Browser** We strongly recommend compiling with **Firefox or LibreWolf**. We have seen repeated cases where Chrome interferes with the compiler through aggressive caching and request handling. The generated components will work in any browser, but the compiler itself is most reliable in Firefox-based browsers. 4. **JCB version** The JCB version in use was not mentioned. Please confirm which version you are running. Several issues related to Power loading were fixed and improved in later releases. If you are not on the latest JCB version, please upgrade and test again.
Owner

I know saw your PR, and understood the issue better, thank you! I will fix this with the next release, or you can just make a PR here towards this repo, let me know if you run into any trouble with the PR.

I know saw your PR, and understood the issue better, thank you! I will fix this with the next release, or you can just make a PR here towards this repo, let me know if you run into any trouble with the PR.
Sign in to join this conversation.
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: joomla/Component-Builder#1277