Exporting Component as JCB package gives error #1049

Closed
opened 2024-02-09 17:30:02 +00:00 by jjs · 11 comments

Steps to reproduce the issue

Select a Component e.g. the Demo.
Then click Export as JCB package

Expected result

Exported package

Actual result

Class "JCBArrayHelper" not found

System information (as much as possible)

  • OS Name & Version: Ubuntu Linux
  • MySql Version: 8.0.28
  • Apache Version:
  • PHP Version: 8.0.28
  • Joomla Version: 3.10.12
  • JCB Version: 3.1.37
  • Browser: Firefox

Additional comments

### Steps to reproduce the issue Select a Component e.g. the Demo. Then click Export as JCB package ### Expected result Exported package ### Actual result Class "JCBArrayHelper" not found ### System information (as much as possible) - OS Name & Version: Ubuntu Linux - MySql Version: 8.0.28 - Apache Version: - PHP Version: 8.0.28 - Joomla Version: 3.10.12 - JCB Version: 3.1.37 - Browser: Firefox ### Additional comments
Owner

Yes as I mentioned in the previous post this area needs attention... we need to start fixing it going forward. I hope to in this following week to get to it. I will keep you posted.

Yes as I mentioned in the previous post this area needs attention... we need to start fixing it going forward. I hope to in this following week to get to it. I will keep you posted.
Author

I hope this gets fixed. So we can export from 3 and import into 4 and 5.
Thanks.

I hope this gets fixed. So we can export from 3 and import into 4 and 5. Thanks.
Owner

This feature will also be removed to get the next stable version released, but it is also a very important part of JCB, and will be added back soon as we can.

Currently the normal Joomla upgrade path is the best way to move your JCB instance to the next version of Joomla and JCB. So making a clone of your development system (so you have the original Joomla 3 "with JCB 3" system as back-up to fallback unto), and then migrate it to Joomla 4, and then to Joomla 5, and then install JCB 5.0.0-rc1 and you will have migrated JCB to the newest version and still have all your component in JCB.

This feature will also be removed to get the next stable version released, but it is also a very important part of JCB, and will be added back soon as we can. Currently the normal Joomla upgrade path is the best way to move your JCB instance to the next version of Joomla and JCB. So making a **clone of your development system** (so you have the original Joomla 3 "with JCB 3" system as back-up to fallback unto), and then migrate it to Joomla 4, and then to Joomla 5, and then install JCB 5.0.0-rc1 and you will have migrated JCB to the newest version and still have all your component in JCB.
Author

Understood. I agree a stable package is of course the best for now.
Hope you will put it back.

Thanks for the hint, did not think about it to clone what I have and upgrade it towards joomla 5.

Understood. I agree a stable package is of course the best for now. Hope you will put it back. Thanks for the hint, did not think about it to clone what I have and upgrade it towards joomla 5.
jjs closed this issue 2024-04-29 18:59:15 +00:00
Author

OK updating a clone of my joomla 3.0.12 to 4.4.4 went ok.
updating latest JCB 3 to latest JCB 4 Gives these kind of errors:

JInstaller: :Install: Error SQL Duplicate column name 'add_php_method_install'

Removing a column or changing the update sql, seems not a solution, as then the next duplicate column pops-up.
Now I know you're busy getting it stable, so don't worry. I just wanted to mention it.

OK updating a clone of my joomla 3.0.12 to 4.4.4 went ok. updating latest JCB 3 to latest JCB 4 Gives these kind of errors: JInstaller: :Install: Error SQL Duplicate column name 'add_php_method_install' Removing a column or changing the update sql, seems not a solution, as then the next duplicate column pops-up. Now I know you're busy getting it stable, so don't worry. I just wanted to mention it.
jjs reopened this issue 2024-04-29 19:46:53 +00:00
Author

ok first update to JCB 4.00-RC1 succeeded. I emptied the data from the update sql files. except for the one which added a table.
Seems to work.

ok first update to JCB 4.00-RC1 succeeded. I emptied the data from the update sql files. except for the one which added a table. Seems to work.
Author

Updated now Joomla 4.4.4 to 5.1.0.
Getting this error when upgrading JCB 4 to JCB 5 rc3:
Error: updating database schema. Error: updating schema for joomla_component table. Error: failed to update (add_php_method_install) column defaults in joomla_component table. Truncated incorrect DECIMAL value:

so just are aware, don't know if it is worthfull to know.

Compiling the component I'm working on gives this error (same as it did in joomla 4.4.4):
Field 'modules' doesn't have a default value

Don't know what or why because I do not have a field 'modules'

Updated now Joomla 4.4.4 to 5.1.0. Getting this error when upgrading JCB 4 to JCB 5 rc3: Error: updating database schema. Error: updating schema for joomla_component table. Error: failed to update (add_php_method_install) column defaults in joomla_component table. Truncated incorrect DECIMAL value: so just are aware, don't know if it is worthfull to know. Compiling the component I'm working on gives this error (same as it did in joomla 4.4.4): Field 'modules' doesn't have a default value Don't know what or why because I do not have a field 'modules'
Member

Please ensure that you remove all the update SQL files from the actual component back-end under the SQL folder before you install the new package. Joomla will automatically run old versions found in this folder, and although the new package may already resolve the problem, the old files will still execute and seem to be giving the same error. Once you've emptied the folder, which is at this location, and then install the new packages, you shouldn't see this error anymore.

Please ensure that you remove all the update SQL files from the actual component back-end under the SQL folder before you install the new package. Joomla will automatically run old versions found in this folder, and although the new package may already resolve the problem, the old files will still execute and seem to be giving the same error. Once you've emptied the folder, which is at [this location](https://git.vdm.dev/joomla/Component-Builder/src/branch/3.x/admin/sql/updates/mysql), and then install the new packages, you shouldn't see this error anymore.
Author

ok thanks. So I did it and reinstalled it, but perhaps I need to wait on the next update and try that again. I don't think it has effect now as I already installed the latest.

In both the cloned and update joomla 4.4.4 and in 5.1.0 where the latest JCBs are now installed, when I go to templates I get this error: Call to a member function selectionTranslation() on null

ok thanks. So I did it and reinstalled it, but perhaps I need to wait on the next update and try that again. I don't think it has effect now as I already installed the latest. In both the cloned and update joomla 4.4.4 and in 5.1.0 where the latest JCBs are now installed, when I go to templates I get this error: Call to a member function selectionTranslation() on null
Owner

It actually effects any install, since old sql update files was removed in the package, but not from your website. So if you have JCB already installed and update it, then those old SQL files will always trigger... therefore must be removed.

The error you are mentioning has been reported, and should be fixed in the next RC release.

It actually effects any install, since old sql update files was removed in the package, but not from your website. So if you have JCB already installed and update it, then those old SQL files will always trigger... therefore must be removed. The error you are mentioning has been reported, and should be fixed in the next RC release.
Author

I removed the sql from the sql update folders from the backend of the testwebsite and from the zip. and this error stays popping up: Error: updating database schema. Error: updating schema for joomla_component table. Error: failed to update (add_php_method_install) column defaults in joomla_component table. Truncated incorrect DECIMAL value: ''

Don't know if that hurts.

But anyway, the Templates are reachable again.
Thanks!

I removed the sql from the sql update folders from the backend of the testwebsite and from the zip. and this error stays popping up: Error: updating database schema. Error: updating schema for joomla_component table. Error: failed to update (add_php_method_install) column defaults in joomla_component table. Truncated incorrect DECIMAL value: '' Don't know if that hurts. But anyway, the Templates are reachable again. Thanks!
Sign in to join this conversation.
No Milestone
No project
No Assignees
3 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: joomla/Component-Builder#1049
No description provided.