FAQ
1. Plugin Fails to Start
1.1 Default Database Placeholders Not Replaced
Symptom: plugin is disabled right after startup.
Fix: set real values for database.*.
1.2 RSA Public Key Cannot Be Retrieved
This issue is generally fixed after v1.1.3.
Symptom: startup shows errors like:
[12:29:17 ERROR]: [WebShopX] WebShopX failed to start
com.zaxxer.hikari.pool.HikariPool$PoolInitializationException: Failed to initialize pool: RSA public key is not available client side (option serverRsaPublicKeyFile not set)
...
Cause: DB uses caching_sha2_password, but WebShopX embedded driver cannot fetch server public key during secure connection setup.
Workaround: switch the account to mysql_native_password (temporary, plugin upgrade recommended):
mysql -u root -p
-- 1. Ensure user_01 uses legacy authentication
ALTER USER 'user_01'@'localhost' IDENTIFIED WITH mysql_native_password BY 'admin123';
-- 2. Refresh privileges
FLUSH PRIVILEGES;
2. API Works but Web Page Cannot Open
Check first:
- Is
server-modeset toexternal(this mode does not host pages)? - Is
embedded-http.static-rootcorrectly hosted by your web server? - Are reverse-proxy routes and MIME settings correct?
3. A Node Has No Web/API
If cluster.role=node, not starting Web/API is expected behavior.
4. Players Report GAME_COIN Issues
Common cause: Vault not mounted or economy provider unavailable.
Troubleshooting:
- Is Vault plugin installed and enabled?
- Can
Economyprovider be obtained? - Do balance read/write operations fail with
vault_error?
5. Frequent listing_unavailable in Market
Common root causes:
- Supply chest is unreachable (world/coordinate container invalid)
- Listing is paused
- Stock is 0 and restock failed
Suggestions:
- Check SUPPLY source container status
- Check
marketRuntime.supplyconfig - Use restock refresh API to verify restock pipeline
6. Refund Dispute Handling
- Verify order status and
refund_deadline. - Verify current value of
refundUndeliveredEnabled. - Verify whether order is already
DELIVEREDor voucherCONSUMED. - If needed, replay admin operations via audit logs.
7. Admin Permission Anomalies
Symptom: admin can log in, but action is rejected as forbidden.
Fix:
- Check the admin's
permissions - Check whether action requires super-admin
- Check whether account is disabled
8. Recommended Daily Checks
- Check abnormal peaks in admin audit logs daily.
- Check
WAIT_CLAIMandmailboxbacklog daily. - Before major promotions, make a config snapshot and rollback plan.
9. SQLite FAQ (New)
9.1 Why does SQLite fail with master/node role?
This is expected by design. SQLite is only supported with cluster.role=standalone.
9.2 How to reduce SQLite lock contention?
Recommended:
sqlite-journal-mode: WAL- configure
sqlite-busy-timeout-msandsqlite-max-retries - keep pool size small (typically 1~2)
9.3 When should I move to MySQL/MariaDB?
Switch when you need multi-node cluster mode or when write contention rises significantly.