实例介绍
包含服务端和移动端
【实例截图】
【核心代码】
androidpn
└── dannytiehui-androidpn-27607bf
├── androidpn-client
│ ├── AndroidManifest.xml
│ ├── bin
│ │ ├── classes
│ │ │ └── org
│ │ │ └── androidpn
│ │ │ ├── client
│ │ │ │ ├── ConnectivityReceiver.class
│ │ │ │ ├── Constants.class
│ │ │ │ ├── InvalidFormatException.class
│ │ │ │ ├── LogUtil.class
│ │ │ │ ├── NotificationDetailsActivity$1.class
│ │ │ │ ├── NotificationDetailsActivity.class
│ │ │ │ ├── NotificationIQ.class
│ │ │ │ ├── NotificationIQProvider.class
│ │ │ │ ├── NotificationPacketListener.class
│ │ │ │ ├── NotificationReceiver.class
│ │ │ │ ├── NotificationService$1.class
│ │ │ │ ├── NotificationService$2.class
│ │ │ │ ├── NotificationService$3.class
│ │ │ │ ├── NotificationService$TaskSubmitter.class
│ │ │ │ ├── NotificationService$TaskTracker.class
│ │ │ │ ├── NotificationService.class
│ │ │ │ ├── NotificationSettingsActivity$1.class
│ │ │ │ ├── NotificationSettingsActivity.class
│ │ │ │ ├── Notifier.class
│ │ │ │ ├── PersistentConnectionListener.class
│ │ │ │ ├── PhoneStateChangeListener.class
│ │ │ │ ├── ReconnectionThread$1.class
│ │ │ │ ├── ReconnectionThread.class
│ │ │ │ ├── ServiceManager$1.class
│ │ │ │ ├── ServiceManager.class
│ │ │ │ ├── XmppManager$1.class
│ │ │ │ ├── XmppManager$ConnectTask.class
│ │ │ │ ├── XmppManager$LoginTask.class
│ │ │ │ ├── XmppManager$RegisterTask$1.class
│ │ │ │ ├── XmppManager$RegisterTask.class
│ │ │ │ └── XmppManager.class
│ │ │ └── demoapp
│ │ │ ├── DemoAppActivity$1.class
│ │ │ ├── DemoAppActivity.class
│ │ │ ├── R$attr.class
│ │ │ ├── R$drawable.class
│ │ │ ├── R$id.class
│ │ │ ├── R$layout.class
│ │ │ ├── R$raw.class
│ │ │ ├── R$string.class
│ │ │ └── R.class
│ │ ├── classes.dex
│ │ ├── DemoAppActivity.apk
│ │ ├── res
│ │ │ ├── drawable
│ │ │ │ └── notification.png
│ │ │ ├── drawable-hdpi
│ │ │ │ └── icon.png
│ │ │ ├── drawable-ldpi
│ │ │ │ └── icon.png
│ │ │ └── drawable-mdpi
│ │ │ └── icon.png
│ │ └── resources.ap_
│ ├── build.properties
│ ├── build.xml
│ ├── gen
│ │ └── org
│ │ └── androidpn
│ │ └── demoapp
│ │ └── R.java
│ ├── lib
│ │ └── asmack.jar
│ ├── LICENSE.txt
│ ├── project.properties
│ ├── README.txt
│ ├── res
│ │ ├── drawable
│ │ │ └── notification.png
│ │ ├── drawable-hdpi
│ │ │ └── icon.png
│ │ ├── drawable-ldpi
│ │ │ └── icon.png
│ │ ├── drawable-mdpi
│ │ │ └── icon.png
│ │ ├── layout
│ │ │ └── main.xml
│ │ ├── raw
│ │ │ └── androidpn.properties
│ │ └── values
│ │ └── strings.xml
│ └── src
│ └── org
│ └── androidpn
│ ├── client
│ │ ├── ConnectivityReceiver.java
│ │ ├── Constants.java
│ │ ├── InvalidFormatException.java
│ │ ├── LogUtil.java
│ │ ├── NotificationDetailsActivity.java
│ │ ├── NotificationIQ.java
│ │ ├── NotificationIQProvider.java
│ │ ├── NotificationPacketListener.java
│ │ ├── NotificationReceiver.java
│ │ ├── NotificationService.java
│ │ ├── NotificationSettingsActivity.java
│ │ ├── Notifier.java
│ │ ├── PersistentConnectionListener.java
│ │ ├── PhoneStateChangeListener.java
│ │ ├── ReconnectionThread.java
│ │ ├── ServiceManager.java
│ │ └── XmppManager.java
│ └── demoapp
│ └── DemoAppActivity.java
├── androidpn-server-bin-jetty
│ ├── bin
│ │ ├── db
│ │ │ ├── androidpn.log
│ │ │ ├── androidpn.properties
│ │ │ └── androidpn.script
│ │ ├── run.bat
│ │ └── run.sh
│ ├── conf
│ │ ├── config.properties
│ │ ├── config.xml
│ │ ├── ehcache.xml
│ │ ├── hibernate.cfg.xml
│ │ ├── jdbc.properties
│ │ ├── log4j.xml
│ │ ├── security
│ │ │ ├── keystore
│ │ │ └── truststore
│ │ └── spring-config.xml
│ ├── console
│ │ ├── 403.jsp
│ │ ├── 404.jsp
│ │ ├── decorators
│ │ │ └── default.jsp
│ │ ├── error.jsp
│ │ ├── images
│ │ │ ├── androidpn.png
│ │ │ ├── user-away.png
│ │ │ ├── user-busy.png
│ │ │ ├── user-offline.png
│ │ │ └── user-online.png
│ │ ├── includes
│ │ │ ├── footer.jsp
│ │ │ ├── header.jsp
│ │ │ └── taglibs.jsp
│ │ ├── index.jsp
│ │ ├── scripts
│ │ │ ├── jquery.js
│ │ │ └── jquery.tablesorter.js
│ │ ├── styles
│ │ │ ├── console.css
│ │ │ └── tablesorter
│ │ │ ├── asc.gif
│ │ │ ├── bg.gif
│ │ │ ├── desc.gif
│ │ │ └── style.css
│ │ └── WEB-INF
│ │ ├── applicationContext.xml
│ │ ├── classes
│ │ │ └── org
│ │ │ └── androidpn
│ │ │ └── server
│ │ │ └── console
│ │ │ ├── api
│ │ │ │ ├── NotificationApiController.class
│ │ │ │ └── UserApiController.class
│ │ │ ├── controller
│ │ │ │ ├── NotificationController.class
│ │ │ │ ├── SessionController.class
│ │ │ │ └── UserController.class
│ │ │ └── vo
│ │ │ └── SessionVO.class
│ │ ├── decorators.xml
│ │ ├── dispatcher-servlet.xml
│ │ ├── pages
│ │ │ ├── index.jsp
│ │ │ ├── notification
│ │ │ │ └── form.jsp
│ │ │ ├── session
│ │ │ │ └── list.jsp
│ │ │ └── user
│ │ │ └── list.jsp
│ │ └── web.xml
│ ├── lib
│ │ ├── androidpn-server-0.6.0.jar
│ │ ├── antlr-2.7.6.jar
│ │ ├── bcprov-jdk15-140.jar
│ │ ├── commons-beanutils-1.8.0.jar
│ │ ├── commons-codec-1.4.jar
│ │ ├── commons-collections-3.2.1.jar
│ │ ├── commons-configuration-1.6.jar
│ │ ├── commons-dbcp-1.2.2.jar
│ │ ├── commons-digester-2.0.jar
│ │ ├── commons-httpclient-3.1.jar
│ │ ├── commons-io-1.4.jar
│ │ ├── commons-lang-2.4.jar
│ │ ├── commons-logging-1.1.1.jar
│ │ ├── commons-pool-1.3.jar
│ │ ├── dom4j-1.6.1.jar
│ │ ├── dwr-2.0.3.jar
│ │ ├── ehcache-1.6.1.jar
│ │ ├── ejb3-persistence-1.0.2.GA.jar
│ │ ├── el-api-6.0.29.jar
│ │ ├── hibernate-annotations-3.4.0.GA.jar
│ │ ├── hibernate-commons-annotations-3.1.0.GA.jar
│ │ ├── hibernate-core-3.3.1.GA.jar
│ │ ├── hsqldb-1.8.0.10.jar
│ │ ├── jasper-6.0.29.jar
│ │ ├── jasper-el-6.0.29.jar
│ │ ├── jasper-jdt-6.0.29.jar
│ │ ├── javassist-3.8.0.GA.jar
│ │ ├── jcip-annotations-1.0.jar
│ │ ├── jetty-6.1.25.jar
│ │ ├── jetty-sslengine-6.1.25.jar
│ │ ├── jetty-util-6.1.25.jar
│ │ ├── jsp-api-2.1.jar
│ │ ├── jstl-1.1.2.jar
│ │ ├── jta-1.1.jar
│ │ ├── juli-6.0.29.jar
│ │ ├── libidn-1.15.jar
│ │ ├── log4j-1.2.12.jar
│ │ ├── mina-core-2.0.0-RC1.jar
│ │ ├── mina-integration-beans-2.0.0-RC1.jar
│ │ ├── mysql-connector-java-5.1.6.jar
│ │ ├── nekopull-0.2.4.jar
│ │ ├── servlet-api-2.5.jar
│ │ ├── sitemesh-2.4.1.jar
│ │ ├── slf4j-api-1.5.8.jar
│ │ ├── slf4j-log4j12-1.5.8.jar
│ │ ├── spring-2.5.6.jar
│ │ ├── spring-webmvc-2.5.6.jar
│ │ ├── standard-1.1.2.jar
│ │ ├── starter.jar
│ │ ├── tinder-1.2.1.jar
│ │ ├── xercesImpl-2.9.1.jar
│ │ ├── xml-apis-1.3.04.jar
│ │ └── xpp3-1.1.4c.jar
│ ├── LICENSE.txt
│ ├── logs
│ │ └── adnroidpn.log
│ └── README.txt
├── androidpn-server-bin-tomcat
│ ├── pom.xml
│ ├── resources
│ │ ├── conf
│ │ │ └── security
│ │ │ ├── keystore
│ │ │ └── truststore
│ │ ├── config.properties
│ │ ├── config.xml
│ │ ├── ehcache.xml
│ │ ├── hibernate.cfg.xml
│ │ ├── jdbc.properties
│ │ ├── log4j.xml
│ │ └── spring-config.xml
│ ├── src
│ │ ├── DemoAndroidpn.java
│ │ └── org
│ │ ├── androidpn
│ │ │ └── server
│ │ │ ├── console
│ │ │ │ ├── api
│ │ │ │ │ ├── NotificationApiController.java
│ │ │ │ │ └── UserApiController.java
│ │ │ │ ├── controller
│ │ │ │ │ ├── NotificationController.java
│ │ │ │ │ ├── SessionController.java
│ │ │ │ │ └── UserController.java
│ │ │ │ └── vo
│ │ │ │ └── SessionVO.java
│ │ │ ├── container
│ │ │ │ ├── AdminConsole.java
│ │ │ │ └── package.html
│ │ │ ├── dao
│ │ │ │ ├── hibernate
│ │ │ │ │ ├── package.html
│ │ │ │ │ └── UserDaoHibernate.java
│ │ │ │ ├── package.html
│ │ │ │ └── UserDao.java
│ │ │ ├── model
│ │ │ │ ├── package.html
│ │ │ │ └── User.java
│ │ │ ├── service
│ │ │ │ ├── impl
│ │ │ │ │ ├── package.html
│ │ │ │ │ └── UserServiceImpl.java
│ │ │ │ ├── package.html
│ │ │ │ ├── ServiceLocator.java
│ │ │ │ ├── ServiceManager.java
│ │ │ │ ├── UserExistsException.java
│ │ │ │ ├── UserNotFoundException.java
│ │ │ │ └── UserService.java
│ │ │ ├── util
│ │ │ │ ├── Config.java
│ │ │ │ ├── ConfigManager.java
│ │ │ │ └── package.html
│ │ │ └── xmpp
│ │ │ ├── auth
│ │ │ │ ├── AuthManager.java
│ │ │ │ ├── AuthToken.java
│ │ │ │ └── package.html
│ │ │ ├── codec
│ │ │ │ ├── package.html
│ │ │ │ ├── XmppCodecFactory.java
│ │ │ │ ├── XmppDecoder.java
│ │ │ │ └── XmppEncoder.java
│ │ │ ├── handler
│ │ │ │ ├── IQAuthHandler.java
│ │ │ │ ├── IQHandler.java
│ │ │ │ ├── IQRegisterHandler.java
│ │ │ │ ├── IQRosterHandler.java
│ │ │ │ ├── package.html
│ │ │ │ └── PresenceUpdateHandler.java
│ │ │ ├── net
│ │ │ │ ├── ConnectionCloseListener.java
│ │ │ │ ├── Connection.java
│ │ │ │ ├── IoBufferWriter.java
│ │ │ │ ├── package.html
│ │ │ │ ├── StanzaHandler.java
│ │ │ │ └── XmppIoHandler.java
│ │ │ ├── package.html
│ │ │ ├── PacketException.java
│ │ │ ├── presence
│ │ │ │ ├── package.html
│ │ │ │ └── PresenceManager.java
│ │ │ ├── push
│ │ │ │ ├── NotificationManager.java
│ │ │ │ └── package.html
│ │ │ ├── router
│ │ │ │ ├── IQRouter.java
│ │ │ │ ├── MessageRouter.java
│ │ │ │ ├── package.html
│ │ │ │ ├── PacketDeliverer.java
│ │ │ │ ├── PacketRouter.java
│ │ │ │ └── PresenceRouter.java
│ │ │ ├── session
│ │ │ │ ├── ClientSession.java
│ │ │ │ ├── package.html
│ │ │ │ ├── Session.java
│ │ │ │ └── SessionManager.java
│ │ │ ├── ssl
│ │ │ │ ├── package.html
│ │ │ │ ├── SSLConfig.java
│ │ │ │ ├── SSLKeyManagerFactory.java
│ │ │ │ └── SSLTrustManagerFactory.java
│ │ │ ├── UnauthenticatedException.java
│ │ │ ├── UnauthorizedException.java
│ │ │ └── XmppServer.java
│ │ ├── dom4j
│ │ │ └── io
│ │ │ └── XMPPPacketReader.java
│ │ └── jivesoftware
│ │ ├── openfire
│ │ │ ├── net
│ │ │ │ └── MXParser.java
│ │ │ └── nio
│ │ │ └── XMLLightweightParser.java
│ │ └── util
│ │ ├── PropertyEventDispatcher.java
│ │ ├── PropertyEventListener.java
│ │ └── XMLWriter.java
│ └── WebRoot
│ ├── 403.jsp
│ ├── 404.jsp
│ ├── decorators
│ │ └── default.jsp
│ ├── error.jsp
│ ├── images
│ │ ├── androidpn.png
│ │ ├── user-away.png
│ │ ├── user-busy.png
│ │ ├── user-offline.png
│ │ └── user-online.png
│ ├── includes
│ │ ├── footer.jsp
│ │ ├── header.jsp
│ │ └── taglibs.jsp
│ ├── index.jsp
│ ├── META-INF
│ │ └── MANIFEST.MF
│ ├── notification
│ │ └── form.jsp
│ ├── scripts
│ │ ├── jquery.js
│ │ └── jquery.tablesorter.js
│ ├── session
│ │ └── list.jsp
│ ├── styles
│ │ ├── console.css
│ │ └── tablesorter
│ │ ├── asc.gif
│ │ ├── bg.gif
│ │ ├── desc.gif
│ │ └── style.css
│ ├── user
│ │ └── list.jsp
│ └── WEB-INF
│ ├── classes
│ │ ├── conf
│ │ │ └── security
│ │ │ ├── keystore
│ │ │ └── truststore
│ │ ├── config.properties
│ │ ├── config.xml
│ │ ├── DemoAndroidpn.class
│ │ ├── ehcache.xml
│ │ ├── hibernate.cfg.xml
│ │ ├── jdbc.properties
│ │ ├── log4j.xml
│ │ ├── org
│ │ │ ├── androidpn
│ │ │ │ └── server
│ │ │ │ ├── console
│ │ │ │ │ ├── api
│ │ │ │ │ │ ├── NotificationApiController.class
│ │ │ │ │ │ └── UserApiController.class
│ │ │ │ │ ├── controller
│ │ │ │ │ │ ├── NotificationController.class
│ │ │ │ │ │ ├── SessionController.class
│ │ │ │ │ │ └── UserController.class
│ │ │ │ │ └── vo
│ │ │ │ │ └── SessionVO.class
│ │ │ │ ├── container
│ │ │ │ │ └── package.html
│ │ │ │ ├── dao
│ │ │ │ │ ├── hibernate
│ │ │ │ │ │ ├── package.html
│ │ │ │ │ │ └── UserDaoHibernate.class
│ │ │ │ │ ├── package.html
│ │ │ │ │ └── UserDao.class
│ │ │ │ ├── model
│ │ │ │ │ ├── package.html
│ │ │ │ │ └── User.class
│ │ │ │ ├── service
│ │ │ │ │ ├── impl
│ │ │ │ │ │ ├── package.html
│ │ │ │ │ │ └── UserServiceImpl.class
│ │ │ │ │ ├── package.html
│ │ │ │ │ ├── ServiceLocator.class
│ │ │ │ │ ├── ServiceManager.class
│ │ │ │ │ ├── UserExistsException.class
│ │ │ │ │ ├── UserNotFoundException.class
│ │ │ │ │ └── UserService.class
│ │ │ │ ├── util
│ │ │ │ │ ├── Config.class
│ │ │ │ │ ├── ConfigManager.class
│ │ │ │ │ └── package.html
│ │ │ │ └── xmpp
│ │ │ │ ├── auth
│ │ │ │ │ ├── AuthManager.class
│ │ │ │ │ ├── AuthToken.class
│ │ │ │ │ └── package.html
│ │ │ │ ├── codec
│ │ │ │ │ ├── package.html
│ │ │ │ │ ├── XmppCodecFactory.class
│ │ │ │ │ ├── XmppDecoder.class
│ │ │ │ │ └── XmppEncoder.class
│ │ │ │ ├── handler
│ │ │ │ │ ├── IQAuthHandler.class
│ │ │ │ │ ├── IQHandler.class
│ │ │ │ │ ├── IQRegisterHandler.class
│ │ │ │ │ ├── IQRosterHandler.class
│ │ │ │ │ ├── package.html
│ │ │ │ │ └── PresenceUpdateHandler.class
│ │ │ │ ├── net
│ │ │ │ │ ├── Connection$ClientAuth.class
│ │ │ │ │ ├── Connection$ThreadLocalEncoder.class
│ │ │ │ │ ├── Connection$TLSPolicy.class
│ │ │ │ │ ├── Connection.class
│ │ │ │ │ ├── ConnectionCloseListener.class
│ │ │ │ │ ├── IoBufferWriter.class
│ │ │ │ │ ├── package.html
│ │ │ │ │ ├── StanzaHandler.class
│ │ │ │ │ └── XmppIoHandler.class
│ │ │ │ ├── package.html
│ │ │ │ ├── PacketException.class
│ │ │ │ ├── presence
│ │ │ │ │ ├── package.html
│ │ │ │ │ └── PresenceManager.class
│ │ │ │ ├── push
│ │ │ │ │ ├── NotificationManager.class
│ │ │ │ │ └── package.html
│ │ │ │ ├── router
│ │ │ │ │ ├── IQRouter.class
│ │ │ │ │ ├── MessageRouter.class
│ │ │ │ │ ├── package.html
│ │ │ │ │ ├── PacketDeliverer.class
│ │ │ │ │ ├── PacketRouter.class
│ │ │ │ │ └── PresenceRouter.class
│ │ │ │ ├── session
│ │ │ │ │ ├── ClientSession.class
│ │ │ │ │ ├── package.html
│ │ │ │ │ ├── Session.class
│ │ │ │ │ ├── SessionManager$ClientSessionListener.class
│ │ │ │ │ └── SessionManager.class
│ │ │ │ ├── ssl
│ │ │ │ │ ├── package.html
│ │ │ │ │ ├── SSLConfig.class
│ │ │ │ │ ├── SSLKeyManagerFactory.class
│ │ │ │ │ └── SSLTrustManagerFactory.class
│ │ │ │ ├── UnauthenticatedException.class
│ │ │ │ ├── UnauthorizedException.class
│ │ │ │ ├── XmppServer$ShutdownHookThread.class
│ │ │ │ ├── XmppServer$ShutdownThread.class
│ │ │ │ └── XmppServer.class
│ │ │ ├── dom4j
│ │ │ │ └── io
│ │ │ │ └── XMPPPacketReader.class
│ │ │ └── jivesoftware
│ │ │ ├── openfire
│ │ │ │ ├── net
│ │ │ │ │ └── MXParser.class
│ │ │ │ └── nio
│ │ │ │ ├── XMLLightweightParser$PropertyListener.class
│ │ │ │ └── XMLLightweightParser.class
│ │ │ └── util
│ │ │ ├── PropertyEventDispatcher$EventType.class
│ │ │ ├── PropertyEventDispatcher.class
│ │ │ ├── PropertyEventListener.class
│ │ │ └── XMLWriter.class
│ │ └── spring-config.xml
│ ├── decorators.xml
│ ├── dispatcher-servlet.xml
│ ├── lib
│ │ ├── androidpn-server-0.5.0.jar
│ │ ├── antlr-2.7.6.jar
│ │ ├── bcprov-jdk15-140.jar
│ │ ├── commons-beanutils-1.8.0.jar
│ │ ├── commons-codec-1.4.jar
│ │ ├── commons-collections-3.2.1.jar
│ │ ├── commons-configuration-1.6.jar
│ │ ├── commons-dbcp-1.2.2.jar
│ │ ├── commons-digester-2.0.jar
│ │ ├── commons-httpclient-3.1.jar
│ │ ├── commons-io-1.4.jar
│ │ ├── commons-lang-2.4.jar
│ │ ├── commons-logging-1.1.1.jar
│ │ ├── commons-pool-1.3.jar
│ │ ├── dom4j-1.6.1.jar
│ │ ├── dwr-2.0.3.jar
│ │ ├── ehcache-1.6.1.jar
│ │ ├── ejb3-persistence-1.0.2.GA.jar
│ │ ├── hibernate-annotations-3.4.0.GA.jar
│ │ ├── hibernate-commons-annotations-3.1.0.GA.jar
│ │ ├── hibernate-core-3.3.1.GA.jar
│ │ ├── hsqldb-1.8.0.10.jar
│ │ ├── javassist-3.8.0.GA.jar
│ │ ├── jcip-annotations-1.0.jar
│ │ ├── jetty-6.1.25.jar
│ │ ├── jetty-sslengine-6.1.25.jar
│ │ ├── jetty-util-6.1.25.jar
│ │ ├── jstl-1.1.2.jar
│ │ ├── jta-1.1.jar
│ │ ├── libidn-1.15.jar
│ │ ├── log4j-1.2.12.jar
│ │ ├── mina-core-2.0.0-RC1.jar
│ │ ├── mina-integration-beans-2.0.0-RC1.jar
│ │ ├── mysql-connector-java-5.1.6.jar
│ │ ├── nekopull-0.2.4.jar
│ │ ├── sitemesh-2.4.1.jar
│ │ ├── slf4j-api-1.5.8.jar
│ │ ├── slf4j-log4j12-1.5.8.jar
│ │ ├── spring-2.5.6.jar
│ │ ├── spring-webmvc-2.5.6.jar
│ │ ├── standard-1.1.2.jar
│ │ ├── starter.jar
│ │ ├── tinder-1.2.1.jar
│ │ ├── xercesImpl-2.9.1.jar
│ │ ├── xml-apis-1.3.04.jar
│ │ └── xpp3-1.1.4c.jar
│ ├── pages
│ │ ├── index.jsp
│ │ ├── notification
│ │ │ └── form.jsp
│ │ ├── session
│ │ │ └── list.jsp
│ │ └── user
│ │ └── list.jsp
│ └── web.xml
├── androidpn-server-src
│ ├── console
│ │ ├── pom.xml
│ │ └── src
│ │ └── main
│ │ ├── java
│ │ │ └── org
│ │ │ └── androidpn
│ │ │ └── server
│ │ │ └── console
│ │ │ ├── controller
│ │ │ │ ├── NotificationController.java
│ │ │ │ ├── SessionController.java
│ │ │ │ └── UserController.java
│ │ │ └── vo
│ │ │ └── SessionVO.java
│ │ └── webapp
│ │ ├── 403.jsp
│ │ ├── 404.jsp
│ │ ├── decorators
│ │ │ └── default.jsp
│ │ ├── error.jsp
│ │ ├── images
│ │ │ ├── androidpn.png
│ │ │ ├── user-away.png
│ │ │ ├── user-busy.png
│ │ │ ├── user-offline.png
│ │ │ └── user-online.png
│ │ ├── includes
│ │ │ ├── footer.jsp
│ │ │ ├── header.jsp
│ │ │ └── taglibs.jsp
│ │ ├── index.jsp
│ │ ├── scripts
│ │ │ ├── jquery.js
│ │ │ └── jquery.tablesorter.js
│ │ ├── styles
│ │ │ ├── console.css
│ │ │ └── tablesorter
│ │ │ ├── asc.gif
│ │ │ ├── bg.gif
│ │ │ ├── desc.gif
│ │ │ └── style.css
│ │ └── WEB-INF
│ │ ├── applicationContext.xml
│ │ ├── decorators.xml
│ │ ├── dispatcher-servlet.xml
│ │ ├── pages
│ │ │ ├── index.jsp
│ │ │ ├── notification
│ │ │ │ └── form.jsp
│ │ │ ├── session
│ │ │ │ └── list.jsp
│ │ │ └── user
│ │ │ └── list.jsp
│ │ └── web.xml
│ ├── LICENSE.txt
│ ├── pom.xml
│ ├── README.txt
│ ├── server
│ │ ├── pom.xml
│ │ └── src
│ │ ├── main
│ │ │ ├── assembly
│ │ │ │ ├── bin.xml
│ │ │ │ └── src.xml
│ │ │ ├── bin
│ │ │ │ ├── run.bat
│ │ │ │ └── run.sh
│ │ │ ├── conf
│ │ │ │ └── security
│ │ │ │ ├── keystore
│ │ │ │ └── truststore
│ │ │ ├── java
│ │ │ │ └── org
│ │ │ │ ├── androidpn
│ │ │ │ │ └── server
│ │ │ │ │ ├── container
│ │ │ │ │ │ ├── AdminConsole.java
│ │ │ │ │ │ └── package.html
│ │ │ │ │ ├── dao
│ │ │ │ │ │ ├── hibernate
│ │ │ │ │ │ │ ├── package.html
│ │ │ │ │ │ │ ├── UserDaoHibernate.java
│ │ │ │ │ │ │ └── UserDaoHibernate.java.bak
│ │ │ │ │ │ ├── package.html
│ │ │ │ │ │ ├── UserDao.java
│ │ │ │ │ │ └── UserDao.java.bak
│ │ │ │ │ ├── model
│ │ │ │ │ │ ├── package.html
│ │ │ │ │ │ └── User.java
│ │ │ │ │ ├── service
│ │ │ │ │ │ ├── impl
│ │ │ │ │ │ │ ├── package.html
│ │ │ │ │ │ │ ├── UserServiceImpl.java
│ │ │ │ │ │ │ └── UserServiceImpl.java.bak
│ │ │ │ │ │ ├── package.html
│ │ │ │ │ │ ├── ServiceLocator.java
│ │ │ │ │ │ ├── ServiceManager.java
│ │ │ │ │ │ ├── UserExistsException.java
│ │ │ │ │ │ ├── UserNotFoundException.java
│ │ │ │ │ │ ├── UserService.java
│ │ │ │ │ │ └── UserService.java.bak
│ │ │ │ │ ├── util
│ │ │ │ │ │ ├── Config.java
│ │ │ │ │ │ ├── ConfigManager.java
│ │ │ │ │ │ └── package.html
│ │ │ │ │ └── xmpp
│ │ │ │ │ ├── auth
│ │ │ │ │ │ ├── AuthManager.java
│ │ │ │ │ │ ├── AuthToken.java
│ │ │ │ │ │ └── package.html
│ │ │ │ │ ├── codec
│ │ │ │ │ │ ├── package.html
│ │ │ │ │ │ ├── XmppCodecFactory.java
│ │ │ │ │ │ ├── XmppDecoder.java
│ │ │ │ │ │ └── XmppEncoder.java
│ │ │ │ │ ├── handler
│ │ │ │ │ │ ├── IQAuthHandler.java
│ │ │ │ │ │ ├── IQHandler.java
│ │ │ │ │ │ ├── IQRegisterHandler.java
│ │ │ │ │ │ ├── IQRosterHandler.java
│ │ │ │ │ │ ├── package.html
│ │ │ │ │ │ └── PresenceUpdateHandler.java
│ │ │ │ │ ├── net
│ │ │ │ │ │ ├── ConnectionCloseListener.java
│ │ │ │ │ │ ├── Connection.java
│ │ │ │ │ │ ├── IoBufferWriter.java
│ │ │ │ │ │ ├── package.html
│ │ │ │ │ │ ├── StanzaHandler.java
│ │ │ │ │ │ └── XmppIoHandler.java
│ │ │ │ │ ├── package.html
│ │ │ │ │ ├── PacketException.java
│ │ │ │ │ ├── presence
│ │ │ │ │ │ ├── package.html
│ │ │ │ │ │ └── PresenceManager.java
│ │ │ │ │ ├── push
│ │ │ │ │ │ ├── NotificationManager.java
│ │ │ │ │ │ └── package.html
│ │ │ │ │ ├── router
│ │ │ │ │ │ ├── IQRouter.java
│ │ │ │ │ │ ├── MessageRouter.java
│ │ │ │ │ │ ├── package.html
│ │ │ │ │ │ ├── PacketDeliverer.java
│ │ │ │ │ │ ├── PacketRouter.java
│ │ │ │ │ │ └── PresenceRouter.java
│ │ │ │ │ ├── session
│ │ │ │ │ │ ├── ClientSession.java
│ │ │ │ │ │ ├── package.html
│ │ │ │ │ │ ├── Session.java
│ │ │ │ │ │ └── SessionManager.java
│ │ │ │ │ ├── ssl
│ │ │ │ │ │ ├── package.html
│ │ │ │ │ │ ├── SSLConfig.java
│ │ │ │ │ │ ├── SSLKeyManagerFactory.java
│ │ │ │ │ │ └── SSLTrustManagerFactory.java
│ │ │ │ │ ├── UnauthenticatedException.java
│ │ │ │ │ ├── UnauthorizedException.java
│ │ │ │ │ └── XmppServer.java
│ │ │ │ ├── dom4j
│ │ │ │ │ └── io
│ │ │ │ │ └── XMPPPacketReader.java
│ │ │ │ └── jivesoftware
│ │ │ │ ├── openfire
│ │ │ │ │ ├── net
│ │ │ │ │ │ └── MXParser.java
│ │ │ │ │ └── nio
│ │ │ │ │ └── XMLLightweightParser.java
│ │ │ │ └── util
│ │ │ │ ├── PropertyEventDispatcher.java
│ │ │ │ ├── PropertyEventListener.java
│ │ │ │ └── XMLWriter.java
│ │ │ └── resources
│ │ │ ├── config.properties
│ │ │ ├── config.xml
│ │ │ ├── ehcache.xml
│ │ │ ├── hibernate.cfg.xml
│ │ │ ├── jdbc.properties
│ │ │ ├── log4j.xml
│ │ │ └── spring-config.xml
│ │ └── test
│ │ ├── java
│ │ │ └── org
│ │ │ └── androidpn
│ │ │ └── server
│ │ │ ├── dao
│ │ │ │ └── UserDaoTest.java
│ │ │ └── service
│ │ │ ├── ServiceLocatorTest.java
│ │ │ └── UserServiceTest.java
│ │ └── resources
│ │ ├── sample-data.xml
│ │ └── spring-test.xml
│ └── starter
│ ├── pom.xml
│ └── src
│ └── main
│ └── java
│ └── org
│ └── androidpn
│ ├── server
│ │ └── starter
│ │ ├── package.html
│ │ ├── ServerClassLoader.java
│ │ └── ServerStarter.java
│ └── starter
│ ├── ServerClassLoader.java
│ └── ServerStarter.java
├── apnsUnit
│ ├── example.class
│ ├── example.java
│ ├── GetPostUtil.class
│ └── GetPostUtil.java
└── README
222 directories, 572 files
标签:
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论