Component not installing #996
Labels
No Milestone
No project
No Assignees
2 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: joomla/Component-Builder#996
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Steps to reproduce the issue
Hi
I've built a component and installed it. All worked until I tried to update it. It said it installed but when I try to open it is says
View class not found [class, file]: patientrecallsViewpatientrecalls, /mnt/storage/vhosts/domain.com/httpdocs/administrator/components/com_patientrecalls/views/patientrecalls/view.html.php
the file looks like this
?>
###BOM###
// No direct access to this file
defined('_JEXEC') or die('Restricted access');
###DASH_VIEW_HTML_HEADER###
/**
/
class ###Component###View###Component### extends JViewLegacy
{
/*
*/
function display($tpl = null)
{
// Assign data to the view
$this->icons = $this->get('Icons');
$this->contributors =
###Component###Helper::getContributors();###DASH_GET_CUSTOM_DATA###
// get the manifest details of the component
$this->manifest = ###Component###Helper::manifest();
so it's not been installed.
I've also noticed that the admin view won't allow viewing when clicking fields.
Any idea how I can fix or debug it?
Expected result
component to install
Actual result
As above component installs but throws above error and when I look at the files they show similar to above.
System information (as much as possible)
Additional comments
I've now tested on other websites on the same server and they work for the admin fields updates. However they are for an earlier version 2.11.4 of JCB so I'm wondering if the latest version of JCB isn't compatible and that's what's giving me the issues
I ran a clean install on one of the sites on the same server. It threw:
Warning
JInstaller: :Install: Error SQL Specified key was too long; max key length is 767 bytes
Extension Install: SQL error processing query: DB function failed with error number 1071
Specified key was too long; max key length is 767 bytes
SQL =
CREATE TABLE IF NOT EXISTS
#__componentbuilder_external_code
(target
VARCHAR(255) NOT NULL DEFAULT '',hash
VARCHAR(64) NOT NULL DEFAULT '',PRIMARY KEY (
target
)) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 DEFAULT COLLATE=utf8mb4_general_ci ROW_FORMAT=DYNAMIC;
Package Install: There was an error installing an extension: joomla__Component-Builder__master.zip
So I wonder if JCB needs a different version of mysql??
So I've created a work around by editing the utilities.php file in the libraries folder.
I updated the get between to cope with and empty value.
Hasn't solved my no install properly issue for the component but the admin views work better now.
I am honestly puzzled by this... this issue has been coming up since we started the migration to Joomla 4 containerized architecture. While it has never happened to me, in my main development environment, nor in any of my test systems, nor with any of the components I have build so far... I have been doing everything I can to try and resolve what I can not see.
What I realize it is the result of using JCB outside of its original use-case (not that JCB should not be stable enough to handle this). But it means I have not build any component with JCB that causes this issue to occurs... or at-least from what I know. Meaning the way I work in JCB does not cause this...
That said... I am going to continue trying to resolve this, as you can look at these past issues:
#994
#978
So some suggestions.
I will stay on the lookout and also respond if I think there is new info worth sharing from my side.
@alanwebsites can you please make sure that the plugins are all activated and linked?
Installing JCB now comes with a whole list of plugins, and they must first be activated, and then in the global options under the compiler tab be activated. Not that I think it should be the cause of this issue, but if they are not activated there are some features in JCB that just does not load, and it may be needed.
I have fixed this issue going forward, but existing installs that upgrade will still manually have to do the linking.
Hi Thanks for the suggestion I checked and they all seem to be published
Content - Componentbuilder Field Ordering Tabs content componentbuilderfieldorderingtabs Public 10453
Content - Componentbuilder Language Tabs content componentbuilderlanguagetabs Public 10454
Content - Componentbuilder Component Dashboard Headers Tabs content componentbuildercomponentdashboardheaderstabs Public 10450
Content - Componentbuilder Component Headers Tabs content componentbuildercomponentheaderstabs Public 10451
Content - Componentbuilder Custom Admin Headers Tabs content componentbuildercustomadminheaderstabs Public 10452
Content - Componentbuilder Dynamic Get Headers Tabs content componentbuilderdynamicgetheaderstabs Public 10457
Content - Componentbuilder Site Headers Tabs content componentbuildersiteheaderstabs Public 10456
Content - Componentbuilder Privacy Tabs content componentbuilderprivacytabs Public 10455
Content - Componentbuilder Admin Headers Tabs content componentbuilderadminheaderstabs Public 10449
Extension - Componentbuilder Privacy Compiler extension componentbuilderprivacycompiler Public 10464
Extension - Componentbuilder Powers Autoloader Compiler extension componentbuilderpowersautoloadercompiler Public 10463
Extension - Componentbuilder ActionLog Compiler extension componentbuilderactionlogcompiler Public 10458
Extension - Componentbuilder Language Packaging extension componentbuilderlanguagepackaging Public 10462
Extension - Componentbuilder Headers Compiler extension componentbuilderheaderscompiler Public 10461
Extension - Componentbuilder Field Ordering Compiler extension componentbuilderfieldorderingcompiler Public 10460
Extension - Componentbuilder Export Compiler