As ZD does not have zmzimletctl util I'm trying to deploy "hello world" zimlet by following command
java -cp ../jetty/lib/log4j-1.2.16.jar:../jetty/common/lib/commons-httpclient-3.1.jar:../jetty/common/lib/mail.jar:../jetty/common/lib/commons-logging.jar:../jetty/common/lib/commons-codec-1.4.jar:../jetty/common/lib/json.jar:../jetty/common/lib/dom4j-1.5.2.jar:../jetty/common/lib/zimbracommon.jar:../jetty/webapps/service/WEB-INF/lib/zimbrastore.jar:../jetty/common/lib/guava-r09.jar:../jetty/common/lib/zimbra-native.jar -Dzimbra.config=conf/localconfig.xml -Djava.library.path=../lib/ com.zimbra.cs.zimlet.ZimletUtil deploy zimlets/com_zimbra_hello.zip
but got this error
Fatal error: terminating: Failed to loadLibrary(zimbra-native)
java.lang.UnsatisfiedLinkError: /opt/zimbra/zdesktop/lib/libzimbra-native.so: /opt/zimbra/zdesktop/lib/libzimbra-native.so: wrong ELF class: ELFCLASS32 (Possible cause: architecture word width mismatch)
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1807)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1732)
at java.lang.Runtime.loadLibrary0(Runtime.java:823)
at java.lang.System.loadLibrary(System.java:1028)
at com.zimbra.znative.Util.loadLibrary(Util.java:38)
at com.zimbra.znative.Util.(Util.java:54)
at com.zimbra.common.net.ProxySelectors.useNativeProxySelector(ProxySelectors.java:63)
at com.zimbra.common.net.ProxySelectors.(ProxySelectors.java:43)
at com.zimbra.common.net.SocketFactories.register(SocketFactories.java:92)
at com.zimbra.common.net.SocketFactories.registerProtocols(SocketFactories.java:69)
at com.zimbra.common.net.SocketFactories.registerProtocols(SocketFactories.java:59)
at com.zimbra.common.util.CliUtil.toolSetup(CliUtil.java:41)
at com.zimbra.common.util.CliUtil.toolSetup(CliUtil.java:36)
at com.zimbra.common.util.CliUtil.toolSetup(CliUtil.java:32)
at com.zimbra.cs.zimlet.ZimletUtil.main(ZimletUtil.java:1893)
How to solve this?
How to deploy a zimlet manually?
System: Ubuntu 12.04 x86-64
Can't deploy a zimlet on Linux 64bit (Zimbra Desktop 7.2.2 GA)
Can't deploy a zimlet on Linux 64bit (Zimbra Desktop 7.2.2 GA)
OK, I've found information about ZD supported architecture.
Anyway, is it not hard to deploy a zimlet manually?
Another issue, with Ubuntu 32bit. Trying to deploy with the same command
java -cp ../jetty/lib/log4j-1.2.16.jar:../jetty/common/lib/commons-httpclient-3.1.jar:../jetty/common/lib/mail.jar:../jetty/common/lib/commons-logging.jar:../jetty/common/lib/commons-codec-1.4.jar:../jetty/common/lib/json.jar:../jetty/common/lib/dom4j-1.5.2.jar:../jetty/common/lib/zimbracommon.jar:../jetty/webapps/service/WEB-INF/lib/zimbrastore.jar:../jetty/common/lib/guava-r09.jar:../jetty/common/lib/zimbra-native.jar -Dzimbra.config=conf/localconfig.xml -Djava.library.path=../lib/ com.zimbra.cs.zimlet.ZimletUtil deploy zimlets/com_zimbra_hello.zip
got exception
[] ERROR: Error
com.zimbra.common.zclient.ZClientException: invoke Connection refused, server: localhost
ExceptionId:main:1367223972971:7aa15a3726efad7a
Code:zclient.IO_ERROR
at com.zimbra.common.zclient.ZClientException.IO_ERROR(ZClientException.java:45)
at com.zimbra.cs.account.soap.SoapProvisioning.invoke(SoapProvisioning.java:354)
at com.zimbra.cs.account.soap.SoapProvisioning.soapAdminAuthenticate(SoapProvisioning.java:295)
at com.zimbra.cs.zimlet.ZimletUtil$ZimletSoapUtil.initZimletSoapUtil(ZimletUtil.java:1380)
at com.zimbra.cs.zimlet.ZimletUtil$ZimletSoapUtil.(ZimletUtil.java:1354)
at com.zimbra.cs.zimlet.ZimletUtil.deployZimletBySoap(ZimletUtil.java:1175)
at com.zimbra.cs.zimlet.ZimletUtil.dispatch(ZimletUtil.java:1798)
at com.zimbra.cs.zimlet.ZimletUtil.main(ZimletUtil.java:1897)
Caused by: java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at com.zimbra.common.net.ProtocolSocketFactoryWrapper.createSocket(ProtocolSocketFactoryWrapper.java:46)
at org.apache.commons.httpclient.HttpConnection.open(HttpConnection.java:707)
at org.apache.commons.httpclient.MultiThreadedHttpConnectionManager$HttpConnectionAdapter.open(MultiThreadedHttpConnectionManager.java:1361)
at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:387)
at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171)
at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397)
at com.zimbra.common.soap.SoapHttpTransport.invoke(SoapHttpTransport.java:243)
at com.zimbra.common.soap.SoapHttpTransport.invoke(SoapHttpTransport.java:164)
at com.zimbra.common.soap.SoapTransport.invoke(SoapTransport.java:407)
at com.zimbra.common.soap.SoapTransport.invokeWithoutSession(SoapTransport.java:393)
at com.zimbra.cs.account.soap.SoapProvisioning.invokeRequest(SoapProvisioning.java:342)
at com.zimbra.cs.account.soap.SoapProvisioning.invoke(SoapProvisioning.java:350)
... 6 more
# hostname
ds.alex.ho
# ping ds.alex.ho
PING localhost (127.0.0.1) 56(84) bytes of data.
64 bytes from localhost (127.0.0.1): icmp_req=1 ttl=64 time=0.039 ms
# netstat -altn | grep 46387
tcp 0 0 127.0.0.1:38650 127.0.0.1:46387 ESTABLISHED
tcp6 0 0 127.0.0.1:46387 :::* LISTEN
tcp6 0 0 127.0.0.1:46387 127.0.0.1:38650 ESTABLISHED
I've found that port by
"netstat -altn | grep LISTEN"
command output comparing before and after ZD client start.
What else I should check?
Anyway, is it not hard to deploy a zimlet manually?
Another issue, with Ubuntu 32bit. Trying to deploy with the same command
java -cp ../jetty/lib/log4j-1.2.16.jar:../jetty/common/lib/commons-httpclient-3.1.jar:../jetty/common/lib/mail.jar:../jetty/common/lib/commons-logging.jar:../jetty/common/lib/commons-codec-1.4.jar:../jetty/common/lib/json.jar:../jetty/common/lib/dom4j-1.5.2.jar:../jetty/common/lib/zimbracommon.jar:../jetty/webapps/service/WEB-INF/lib/zimbrastore.jar:../jetty/common/lib/guava-r09.jar:../jetty/common/lib/zimbra-native.jar -Dzimbra.config=conf/localconfig.xml -Djava.library.path=../lib/ com.zimbra.cs.zimlet.ZimletUtil deploy zimlets/com_zimbra_hello.zip
got exception
[] ERROR: Error
com.zimbra.common.zclient.ZClientException: invoke Connection refused, server: localhost
ExceptionId:main:1367223972971:7aa15a3726efad7a
Code:zclient.IO_ERROR
at com.zimbra.common.zclient.ZClientException.IO_ERROR(ZClientException.java:45)
at com.zimbra.cs.account.soap.SoapProvisioning.invoke(SoapProvisioning.java:354)
at com.zimbra.cs.account.soap.SoapProvisioning.soapAdminAuthenticate(SoapProvisioning.java:295)
at com.zimbra.cs.zimlet.ZimletUtil$ZimletSoapUtil.initZimletSoapUtil(ZimletUtil.java:1380)
at com.zimbra.cs.zimlet.ZimletUtil$ZimletSoapUtil.(ZimletUtil.java:1354)
at com.zimbra.cs.zimlet.ZimletUtil.deployZimletBySoap(ZimletUtil.java:1175)
at com.zimbra.cs.zimlet.ZimletUtil.dispatch(ZimletUtil.java:1798)
at com.zimbra.cs.zimlet.ZimletUtil.main(ZimletUtil.java:1897)
Caused by: java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at com.zimbra.common.net.ProtocolSocketFactoryWrapper.createSocket(ProtocolSocketFactoryWrapper.java:46)
at org.apache.commons.httpclient.HttpConnection.open(HttpConnection.java:707)
at org.apache.commons.httpclient.MultiThreadedHttpConnectionManager$HttpConnectionAdapter.open(MultiThreadedHttpConnectionManager.java:1361)
at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:387)
at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171)
at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397)
at com.zimbra.common.soap.SoapHttpTransport.invoke(SoapHttpTransport.java:243)
at com.zimbra.common.soap.SoapHttpTransport.invoke(SoapHttpTransport.java:164)
at com.zimbra.common.soap.SoapTransport.invoke(SoapTransport.java:407)
at com.zimbra.common.soap.SoapTransport.invokeWithoutSession(SoapTransport.java:393)
at com.zimbra.cs.account.soap.SoapProvisioning.invokeRequest(SoapProvisioning.java:342)
at com.zimbra.cs.account.soap.SoapProvisioning.invoke(SoapProvisioning.java:350)
... 6 more
# hostname
ds.alex.ho
# ping ds.alex.ho
PING localhost (127.0.0.1) 56(84) bytes of data.
64 bytes from localhost (127.0.0.1): icmp_req=1 ttl=64 time=0.039 ms
# netstat -altn | grep 46387
tcp 0 0 127.0.0.1:38650 127.0.0.1:46387 ESTABLISHED
tcp6 0 0 127.0.0.1:46387 :::* LISTEN
tcp6 0 0 127.0.0.1:46387 127.0.0.1:38650 ESTABLISHED
I've found that port by
"netstat -altn | grep LISTEN"
command output comparing before and after ZD client start.
What else I should check?
-
- Advanced member
- Posts: 131
- Joined: Sat Sep 13, 2014 1:55 am
Can't deploy a zimlet on Linux 64bit (Zimbra Desktop 7.2.2 GA)
Did you find any solution?
Can't deploy a zimlet on Linux 64bit (Zimbra Desktop 7.2.2 GA)
Yep, create _dev subdirectory in ~/zdesktop/zimlets-deployed/ then create your zimlet root directory inside it, for example com_zimbra_examplesoap
copy zimlet files (xml, js, css, images etc..) into this directory (no need to compress as zip), then press CTRL+F5 in your browser.
Java classes (packed as jar) should be copied into ("zdesktop restart" is required)
/opt/zimbra/zdesktop/jetty/webapps/zimlet/WEB-INF/lib/
Example:
ls -l /home/a1ex/zdesktop/zimlets-deployed/_dev/com_zimbra_examplesoap/
com_zimbra_examplesoap.js
com_zimbra_examplesoap.xml
ls -l /opt/zimbra/zdesktop/jetty/webapps/zimlet/WEB-INF/lib/
examplesoap.jar
copy zimlet files (xml, js, css, images etc..) into this directory (no need to compress as zip), then press CTRL+F5 in your browser.
Java classes (packed as jar) should be copied into ("zdesktop restart" is required)
/opt/zimbra/zdesktop/jetty/webapps/zimlet/WEB-INF/lib/
Example:
ls -l /home/a1ex/zdesktop/zimlets-deployed/_dev/com_zimbra_examplesoap/
com_zimbra_examplesoap.js
com_zimbra_examplesoap.xml
ls -l /opt/zimbra/zdesktop/jetty/webapps/zimlet/WEB-INF/lib/
examplesoap.jar
-
- Advanced member
- Posts: 131
- Joined: Sat Sep 13, 2014 1:55 am
Can't deploy a zimlet on Linux 64bit (Zimbra Desktop 7.2.2 GA)
Thanks. I'm gonna try it out.
Can't deploy a zimlet on Linux 64bit (Zimbra Desktop 7.2.2 GA)
you should use zmpkg for zimlet deployment ...