【解決】ページ権限設定&ワークフロー設定がうまくいきません
はじめまして。ニッチもサッチも行かなくなってしまったため
皆様のお知恵をいただきたく投稿いたします。
【やりたいこと】
「編集者」がページ内を編集、または新規ページ作成をした際に必ず
「管理者」の承認を以て公開されるワークフロー(上級権限モード済み)
【現状】
添付1 ワークフローに送信
「編集者」が新規ページを作成した際、“ワークフローに送信”ボタンは正常に表出
添付2 該当ページへ「管理者」がアクセスすると承認を促すメッセージ表出(正常)
添付3 承認を押下すると
予期せぬエラーが発生しました。
Call to a member function getGroupMembers() on boolean となる
添付4 エラーとなったものの、フルサイトマップにはページが存在しており、
これを削除しようとすると・・・
添付5 先ほどの Call to a member function getGroupMembers() on boolean が
表示され削除できず。
添付6 ページタイプの権限設定状態
添付7 ページ作成した「編集者」でログインをすると"下書き”状態となっていて、
こちらからも削除をすると添付5と同じエラーで削除できず
添付8 そもそものつまずき
「編集者」が既存ページの更新を保存する際、
"ワークフローへ送信”ボタンが表出しなかった
(デフォルト"ページ”をコピーして権限設定前に作成したページ)
添付9 当該"既存ページ”の権限設定状態
添付10 ワークフロー権限状態
【質問】
・ページ作成あとの権限設定がこのような状況を引き起こしているのでしょうか
・「編集者」がページ編集を保存する際、"ワークフローへ送信”ボタンが出ないのは
何か設定が間違っているからでしょうか
・エラーで作成されてしまったページを削除したいのですが、すべて作り直して
しまった方が早いのでしょうか?
<構築時参考資料>
世界一わかりやすいConcrete5 P204~
<環境情報>
インストール環境
Windows10 ローカルPC (64bit)
Windows版 MAMP
ブラウザ GoogleChrome or FireFox
# concrete5 Version
Core Version - 8.4.3
Version Installed - 8.4.3
Database Version - 20180716000000
# concrete5 Packages
Easy Weather (1.0.0), Global Version List (1.0), PDF Viewer (1.0.1)
# concrete5 Overrides
None
# concrete5 Cache Settings
Block Cache - Off
Overrides Cache - On
Full Page Caching - Off
Full Page Cache Lifetime - Every 6 hours (default setting).
# Server Software
Apache/2.2.31 (Win32) DAV/2 mod_ssl/2.2.31 OpenSSL/1.0.2h mod_fcgid/2.3.9 mod_wsgi/3.4 Python/2.7.6 PHP/7.2.1 mod_perl/2.0.8 Perl/v5.16.3
# Server API
apache2handler
# PHP Version
7.2.1
# PHP Extensions
apache2handler, bcmath, bz2, calendar, com_dotnet, Core, ctype, curl, date, dom, exif, fileinfo, filter, gd, gettext, hash, iconv, imagick, json, libxml, mbstring, mysqli, mysqlnd, odbc, openssl, pcre, PDO, pdo_mysql, pdo_sqlite, Phar, Reflection, session, SimpleXML, soap, sockets, SPL, sqlite3, standard, tokenizer, wddx, xml, xmlreader, xmlwriter, zip, zlib
# PHP Settings
max_execution_time - 30
log_errors_max_len - 1024
max_file_uploads - 20
max_input_nesting_level - 64
max_input_time - 60
max_input_vars - 1000
memory_limit - 128M
post_max_size - 8M
upload_max_filesize - 2M
mysqli.max_links - Unlimited
mysqli.max_persistent - Unlimited
odbc.max_links - Unlimited
odbc.max_persistent - Unlimited
pcre.backtrack_limit - 1000000
pcre.recursion_limit - 100000
session.cache_limiter - no value
session.gc_maxlifetime - 7200
soap.wsdl_cache_limit - 5
以上、よろしくおねがいいたします。
※一部画像修正のため再投稿しました。失礼いたしました。
Re: 【質問】ページ権限設定&ワークフロー設定がうまくいきません
/index.php/dashboard/system/registration/notification
Re: Re: 【質問】ページ権限設定&ワークフロー設定がうまくいきません
度々失礼いたします。
自己解決できたようです。
(ただ、次はページタイプを追加する際にエラーが表出しました。
後半に記述いたします)
<設定>
・通知設定を現存するグループに変更
・TESTページがエラーにならずに削除できた
・システムと設定→ワークフロー→ワークフローへのアクセス を以下の設定に変更
承認か却下 :管理者
エントリーの通知:管理者 編集者
承認を通知 :管理者 編集者
却下を通知 :管理者 編集者
・編集者がページ更新を行った際の「ワークフローへ送信」ボタン表出
・管理者ようこそ画面・最新に 要承認件数 表示
・承認対象ページで却下・承認ボタン表出
【確認させてください】
システムと設定→ワークフロー→ワークフローへのアクセスの設定は
承認か却下 :管理者
エントリーの通知:管理者 編集者
承認を通知 :管理者 編集者
却下を通知 :管理者 編集者
で正しいのでしょうか。(目的の「ワークフローへ送信」ボタンが表出しているので目的は達成しているのですが)
「世界一わかりやすいConcrete5」P223には”承認か却下”にしか管理者が設定されておらず、
他のWEBサイトでも概ね同様の記述です。
上記設定で問題なければ、そのようにして進めたいと考えています。
【新たな課題】
・新規でページタイプを追加(ここまでは問題なし)
・ページタイプの権限ボタンを押下 → エラー
※デフォルトページタイプ"ページ”を"コピー"しても同様のエラー発生
ただし、新規ページタイプは作成される
<心当たり>
・「ワークフローへ送信」非表示現象切り分けのため、
作成済みページの複数あったページタイプをすべてデフォルト”ページ”に
切り替え、作成したページタイプを削除した
・デフォルト"ページ”の権限設定は添付14の内容
(変更を承認に「編集者」を追加)
<エラー記述>
Doctrine \ DBAL \ Exception \ SyntaxErrorException
An exception occurred while executing 'select cID from Pages where cParentID in () and cInheritPermissionsFromCID = ': SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') and cInheritPermissionsFromCID =' at line 1
Stack frames (35)
34
Doctrine\DBAL\Exception\SyntaxErrorException
…\vendor\doctrine\dbal\lib\Doctrine\DBAL\Driver\AbstractMySQLDriver.php90
33
Doctrine\DBAL\Driver\AbstractMySQLDriver convertException
…\vendor\doctrine\dbal\lib\Doctrine\DBAL\DBALException.php128
32
Doctrine\DBAL\DBALException driverExceptionDuringQuery
…\vendor\doctrine\dbal\lib\Doctrine\DBAL\Connection.php964
31
Doctrine\DBAL\Driver\PDOException
…\vendor\doctrine\dbal\lib\Doctrine\DBAL\Driver\PDOConnection.php106
30
PDOException
…\vendor\doctrine\dbal\lib\Doctrine\DBAL\Driver\PDOConnection.php104
29
PDO query
…\vendor\doctrine\dbal\lib\Doctrine\DBAL\Driver\PDOConnection.php104
28
Doctrine\DBAL\Driver\PDOConnection query
…\vendor\doctrine\dbal\lib\Doctrine\DBAL\Connection.php954
27
Doctrine\DBAL\Connection query
…\src\Database\Connection\Connection.php80
26
call_user_func_array
…\src\Database\Connection\Connection.php80
25
Concrete\Core\Database\Connection\Connection query
…\src\Page\Page.php2147
24
Concrete\Core\Page\Page updatePermissionsCollectionID
…\src\Page\Page.php2112
23
Concrete\Core\Page\Page setPermissionsToManualOverride
…\src\Page\Type\Type.php307
22
Concrete\Core\Page\Type\Type getPageTypePageTemplateDefaultPageObject
…\controllers\single_page\dashboard\pages\types\permissions.php28
21
Concrete\Controller\SinglePage\Dashboard\Pages\Types\Permissions view
…\src\Controller\AbstractController.php294
20
call_user_func_array
…\src\Controller\AbstractController.php294
19
Concrete\Core\Controller\AbstractController runAction
…\src\Http\ResponseFactory.php188
18
Concrete\Core\Http\ResponseFactory controller
…\src\Http\ResponseFactory.php393
17
Concrete\Core\Http\ResponseFactory collection
…\src\Routing\DispatcherRouteCallback.php34
16
Concrete\Core\Routing\DispatcherRouteCallback execute
…\src\Http\DefaultDispatcher.php130
15
Concrete\Core\Http\DefaultDispatcher handleDispatch
…\src\Http\DefaultDispatcher.php57
14
Concrete\Core\Http\DefaultDispatcher dispatch
…\src\Http\Middleware\DispatcherDelegate.php39
13
Concrete\Core\Http\Middleware\DispatcherDelegate next
…\src\Http\Middleware\ThumbnailMiddleware.php71
12
Concrete\Core\Http\Middleware\ThumbnailMiddleware process
…\src\Http\Middleware\MiddlewareDelegate.php38
11
Concrete\Core\Http\Middleware\MiddlewareDelegate next
…\src\Http\Middleware\FrameOptionsMiddleware.php39
10
Concrete\Core\Http\Middleware\FrameOptionsMiddleware process
…\src\Http\Middleware\MiddlewareDelegate.php38
9
Concrete\Core\Http\Middleware\MiddlewareDelegate next
…\src\Http\Middleware\CookieMiddleware.php37
8
Concrete\Core\Http\Middleware\CookieMiddleware process
…\src\Http\Middleware\MiddlewareDelegate.php38
7
Concrete\Core\Http\Middleware\MiddlewareDelegate next
…\src\Http\Middleware\ApplicationMiddleware.php29
6
Concrete\Core\Http\Middleware\ApplicationMiddleware process
…\src\Http\Middleware\MiddlewareDelegate.php38
5
Concrete\Core\Http\Middleware\MiddlewareDelegate next
…\src\Http\Middleware\MiddlewareStack.php86
4
Concrete\Core\Http\Middleware\MiddlewareStack process
…\src\Http\DefaultServer.php85
3
Concrete\Core\Http\DefaultServer handleRequest
…\src\Foundation\Runtime\Run\DefaultRunner.php119
2
Concrete\Core\Foundation\Runtime\Run\DefaultRunner run
…\src\Foundation\Runtime\DefaultRuntime.php102
1
Concrete\Core\Foundation\Runtime\DefaultRuntime run
…\dispatcher.php36
0
require
C:\MAMP\htdocs\portal\index.php3
C:\MAMP\htdocs\portal\concrete\vendor\doctrine\dbal\lib\Doctrine\DBAL\Driver\AbstractMySQLDriver.php
return new Exception\InvalidFieldNameException($message, $exception);
case '1052':
case '1060':
case '1110':
return new Exception\NonUniqueFieldNameException($message, $exception);
case '1064':
case '1149':
case '1287':
case '1341':
case '1342':
case '1343':
case '1344':
case '1382':
case '1479':
case '1541':
case '1554':
case '1626':
return new Exception\SyntaxErrorException($message, $exception);
case '1044':
case '1045':
case '1046':
case '1049':
case '1095':
case '1142':
case '1143':
case '1227':
case '1370':
case '2002':
case '2005':
return new Exception\ConnectionException($message, $exception);
case '1048':
case '1121':
case '1138':
case '1171':
case '1252':
case '1263':
Environment & details:
Concrete5
情報が不足していましたらご指示をいただければ
ご報告いたします。
解消方法がございましたらご教授お願いいたします。
Re: 【質問】ページ権限設定&ワークフロー設定がうまくいきません
通知の設定については、通知を受け取りたい方に設定していただければ問題ありません。何が正しいということは特にありません。
nogusys
Re: 【質問】ページ権限設定&ワークフロー設定がうまくいきません
同じエラーが出てしまいます。
デバッグモードでエラー発生記述箇所をキャプチャしましたので添付いたします(添付11)
また、エラーメッセージとともに処理プロセスのログと思われる詳細が表示されました。
**********************
Call to a member function getGroupMembers() on boolean
詳細
C:\MAMP\htdocs\portal\concrete\src\Permission\Access\Entity\GroupEntity.php(21): Error->null
C:\MAMP\htdocs\portal\concrete\src\Notification\Notifier\StandardNotifier.php(46): Concrete\Core\Permission\Access\Entity\GroupEntity->getAccessEntityUsers
C:\MAMP\htdocs\portal\concrete\src\Notification\Notifier\WorkflowProgressNotifier.php(18): Concrete\Core\Notification\Notifier\StandardNotifier->getUsersToNotify
C:\MAMP\htdocs\portal\concrete\src\Workflow\Progress\Progress.php(168): Concrete\Core\Notification\Notifier\WorkflowProgressNotifier->getUsersToNotify
C:\MAMP\htdocs\portal\concrete\src\Workflow\Progress\PageProgress.php(22): Concrete\Core\Workflow\Progress\Progress->create
C:\MAMP\htdocs\portal\concrete\src\Workflow\Request\PageRequest.php(42): Concrete\Core\Workflow\Progress\PageProgress->add
C:\MAMP\htdocs\portal\concrete\src\Workflow\Request\Request.php(125): Concrete\Core\Workflow\Request\PageRequest->addWorkflowProgress
C:\MAMP\htdocs\portal\concrete\src\Workflow\Request\PageRequest.php(55): Concrete\Core\Workflow\Request\Request->triggerRequest
C:\MAMP\htdocs\portal\concrete\controllers\dialog\page\delete.php(48): Concrete\Core\Workflow\Request\PageRequest->trigger
C:\MAMP\htdocs\portal\concrete\src\Controller\AbstractController.php(294): Concrete\Controller\Dialog\Page\Delete->submit
C:\MAMP\htdocs\portal\concrete\src\Controller\AbstractController.php(294): null->call_user_func_array
C:\MAMP\htdocs\portal\concrete\src\Routing\ControllerRouteCallback.php(27): Concrete\Core\Controller\AbstractController->runAction
C:\MAMP\htdocs\portal\concrete\src\Routing\Router.php(149): Concrete\Core\Routing\ControllerRouteCallback->execute
C:\MAMP\htdocs\portal\concrete\src\Http\DefaultDispatcher.php(121): Concrete\Core\Routing\Router->execute
C:\MAMP\htdocs\portal\concrete\src\Http\DefaultDispatcher.php(57): Concrete\Core\Http\DefaultDispatcher->handleDispatch
C:\MAMP\htdocs\portal\concrete\src\Http\Middleware\DispatcherDelegate.php(39): Concrete\Core\Http\DefaultDispatcher->dispatch
C:\MAMP\htdocs\portal\concrete\src\Http\Middleware\ThumbnailMiddleware.php(71): Concrete\Core\Http\Middleware\DispatcherDelegate->next
C:\MAMP\htdocs\portal\concrete\src\Http\Middleware\MiddlewareDelegate.php(38): Concrete\Core\Http\Middleware\ThumbnailMiddleware->process
C:\MAMP\htdocs\portal\concrete\src\Http\Middleware\FrameOptionsMiddleware.php(39): Concrete\Core\Http\Middleware\MiddlewareDelegate->next
C:\MAMP\htdocs\portal\concrete\src\Http\Middleware\MiddlewareDelegate.php(38): Concrete\Core\Http\Middleware\FrameOptionsMiddleware->process
C:\MAMP\htdocs\portal\concrete\src\Http\Middleware\CookieMiddleware.php(37): Concrete\Core\Http\Middleware\MiddlewareDelegate->next
C:\MAMP\htdocs\portal\concrete\src\Http\Middleware\MiddlewareDelegate.php(38): Concrete\Core\Http\Middleware\CookieMiddleware->process
C:\MAMP\htdocs\portal\concrete\src\Http\Middleware\ApplicationMiddleware.php(29): Concrete\Core\Http\Middleware\MiddlewareDelegate->next
C:\MAMP\htdocs\portal\concrete\src\Http\Middleware\MiddlewareDelegate.php(38): Concrete\Core\Http\Middleware\ApplicationMiddleware->process
C:\MAMP\htdocs\portal\concrete\src\Http\Middleware\MiddlewareStack.php(86): Concrete\Core\Http\Middleware\MiddlewareDelegate->next
C:\MAMP\htdocs\portal\concrete\src\Http\DefaultServer.php(85): Concrete\Core\Http\Middleware\MiddlewareStack->process
C:\MAMP\htdocs\portal\concrete\src\Foundation\Runtime\Run\DefaultRunner.php(119): Concrete\Core\Http\DefaultServer->handleRequest
C:\MAMP\htdocs\portal\concrete\src\Foundation\Runtime\DefaultRuntime.php(102): Concrete\Core\Foundation\Runtime\Run\DefaultRunner->run
C:\MAMP\htdocs\portal\concrete\dispatcher.php(36): Concrete\Core\Foundation\Runtime\DefaultRuntime->run
C:\MAMP\htdocs\portal\index.php(3): null->require