This article documents a known issue that may arise while deploying Liferay Sync Connector 4.0.1 (the latest version at the time of this writing).
If users deploy Sync Connector 4.0.1 .lpkg file
on Liferay Digital Experience Platform (DXP) 7.0, there may be an error which will cause the system to fail to restart. There is a workaround available for customers; this requires deploying two additional apps. Doing so will enable Liferay Sync Connector 4.0.1 to deploy successfully.
Resolution
By default, Liferay Sync Connector 4.0.0 comes standard on every DXP 7.0 bundle available at Help Center. In order to upgrade to the latest version of the Sync Connector, navigate to Liferay Marketplace and download. A known issue then occurs in which users, who have deployed the latest version of the Sync Connector 4.0.1, will encounter com.liferay.portal.lpkg.deployer.LPKGVerifyException
. The app will not deploy correctly and users cannot restart the bundle.
This is the partial stack trace:
18:07:31,163 INFO [Start Level: Equinox Container: f0ac9b05-dea5-0016-1a27-98eee7355fa7][BundleStartStopLogger:35] STARTED com.liferay.util.taglib_2.5.1 [967] 08-Nov-2016 18:07:31.174 SEVERE [localhost-startStop-1] org.apache.catalina.core.StandardContext.listenerStart Exception sending context initialized event to listener instance of class com.liferay.portal.spring.context.PortalContextLoaderListener java.lang.RuntimeException: com.liferay.portal.lpkg.deployer.LPKGVerifyException: LPKG validation failed with {[missing requirement com.liferay.sync.oauth; version=1.0.1; type=osgi.bundle [caused by: Unable to resolve com.liferay.sync.oauth version=1.0.1: missing requirement com.liferay.oauth.model; version=[1.0.0,2.0.0)]], [missing requirement com.liferay.sync.web; version=1.0.3; type=osgi.bundle [caused by: Unable to resolve com.liferay.sync.web version=1.0.3: missing requirement com.liferay.ip.geocoder; version=[1.0.0,2.0.0)]]} at com.liferay.portal.spring.context.PortalContextLoaderListener.contextInitialized(PortalContextLoaderListener.java:256) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4812) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5255) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:725) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:701) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:717) at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:585) at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1794) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) Caused by: com.liferay.portal.lpkg.deployer.LPKGVerifyException: LPKG validation failed with {[missing requirement com.liferay.sync.oauth; version=1.0.1; type=osgi.bundle [caused by: Unable to resolve com.liferay.sync.oauth version=1.0.1: missing requirement com.liferay.oauth.model; version=[1.0.0,2.0.0)]], [missing requirement com.liferay.sync.web; version=1.0.3; type=osgi.bundle [caused by: Unable to resolve com.liferay.sync.web version=1.0.3: missing requirement com.liferay.ip.geocoder; version=[1.0.0,2.0.0)]]} at com.liferay.portal.lpkg.deployer.internal.LPKGIndexValidator.validate(LPKGIndexValidator.java:267) at com.liferay.portal.lpkg.deployer.internal.DefaultLPKGDeployer._activate(DefaultLPKGDeployer.java:261) at com.liferay.portal.lpkg.deployer.internal.DefaultLPKGDeployer.activate(DefaultLPKGDeployer.java:91)
Our engineers are currently working to resolve this issue, but in the meantime there is a workaround.
Workaround
Deploy the following two apps: Liferay IP Geocoder and Liferay Connector to Oauth. Both these apps are available from Liferay Marketplace. Once the apps are downloaded, execute the following steps:
- Shutdown Liferay DXP 7.0.
- In the
/osgi/marketplace
folder, remove the existing Liferay Sync Connector LPKG file. - Delete the old
/osgi/state
folder. Users should also delete the corresponding application server cache. - Place the new Sync 4.0.1 LPKG file along with the Liferay IP Geocoder and Liferay Oauth Provider apps in the
/deploy
folder. - Download and install the latest patching tool and DE fix pack.
- Start Liferay DXP 7.0 again.
Additional Information
See LPS-69151 for more information and the latest status on the issue.