先引用一篇别人的文章
Liferay是基于SOA理念设计的,很容易通过Web Services对外提供服务接口,下面简单介绍一下。
Liferay如何对外提供服务?
1、在service.xml中编辑,增加一个<entity name="xx" local-service="false" remote-service="true" />
2、ant build-service-xxxx (portal-impl/build.xml)
3、修改XXServiceImpl, 写入你要对外提供的方法逻辑;
4、ant build-service-xxxx (重复2)
5、ant build-wsdd-xxxx in portal-impl/build.xml
6、ant clean deploy in portal-impl/build.xml
这样你就成功发布以了一个服务,在tunnel-web/doc-root/WEB-INF/server-config.wsdd 中查找是否发布成功
如何调用Liferay发布的服务?smilingleo原创
1、新建一个项目(或者打开你要调用服务的项目)
2、将Apache AXIS的所有lib文件拷贝到<your-webapp>/WEB-INF/lib下面;
3、将portal-client.jar拷贝到上述目录,如果没有,在portal-client/build.xml中ant build-client(注意,这时,服务器要在开启状态,而且上面编写的服务已经成功deploy到服务器)
4、编写代码,例如;
import java.net.URL;
import com.company.portal.service.http.MyUserServiceSoap;
import com.company.portal.service.http.MyUserServiceSoapServiceLocator;
public class LiferayClient ...{
public static void main(String [] args) ...{
long userId = 54321L;
long companyId = 12345L;
String email = "me@company.com";
String password = "notTellingYou";
try ...{
MyUserServiceSoapServiceLocator locator = new MyUserServiceSoapServiceLocator();
MyUserServiceSoap soap = locator.getPortal_MyUserService(_getURL(Long.toString(userId), "Portal_MyUserService"));
int isAuthenticated = soap.authenticateByEmailAddress(companyId, email, password);
System.out.println("is user authenticated? " + isAuthenticated);
} catch (Exception e) ...{
System.err.println(e.toString());
}
}
private static URL _getURL(String remoteUser, String serviceName) throws Exception ...{
String password = "secret";
url = "http://" + remoteUser + ":" + password + "@localhost:8080/tunnel-web/secure/axis/" + serviceName;
return new URL(url);
}
}
这篇文章让我们解决了liferay如何去做webservice服务端,,文中也提到外部程序如何去调用liferay写的服务端,在5.0的版本中liferay的网站提供了client用到的所有的包,当然了这个包中不包括你自已开发的webservice.
分享到:
相关推荐
1. **服务代理**:Liferay Portal客户端库提供了服务代理类,允许开发者创建与Liferay服务接口交互的对象。这些代理类简化了调用Web服务的过程,减少了手动编写HTTP请求和解析响应的复杂性。 2. **WSDL支持**:...
总结来说,Liferay Webservice提供了一种强大的方式,将portlet的功能暴露给外部系统,实现数据的交换和集成。通过遵循上述步骤,开发者可以轻松地创建、部署并测试自己的Liferay服务,从而扩展Liferay Portal的功能...
在Liferay中,JSON Web服务提供了灵活的方式来交互和操作平台数据。这些服务允许开发者通过不同的方式调用,包括JavaScript、curl命令以及直接通过URL。以下是对这两种主要使用场景的详细说明: 1. **在Portlet中...
Liferay是一款开源的企业级门户平台,提供了丰富的功能和强大的定制能力,使得开发者可以根据具体需求进行扩展。自定义登录界面和流程是提升用户体验和满足特定安全需求的重要途径。 首先,我们需要了解Liferay中的...
Liferay支持通过Web服务(WebService)接口来发布和管理内容。此外,文档提到了Liferay Web Proxy Portlet,该Portlet可以用来在Liferay门户中嵌入其他网站或应用。 ### Liferay Web服务器和环境配置 文档中提到了...
6. **服务和API**:Liferay提供大量的服务接口,开发者可以利用这些API进行扩展和集成。 7. **Web内容管理系统**:Liferay内置的WCM系统可以帮助创建、管理和发布网站内容。 8. **社交网络和协作**:Liferay支持...
4. **Portlet开发**:在Liferay中,Struts Action可以通过实现Liferay的PortletAction接口来适应portlet环境。这样,Struts的请求处理机制就能与Liferay的portlet生命周期协同工作。 5. **部署与测试**:将整合后的...
Liferay Portal Liferay IDE
1. **扩展框架**:Liferay Ext基于Maven构建,它提供了一个框架,开发者可以在其中添加自定义的类加载器,使得新的类和配置可以优先于默认的Liferay类加载,实现对核心功能的扩展。 2. **portlet开发**:通过...
- 它的 RESTful Web Services 接口使得非 Java 应用也能轻松访问 Liferay 功能。 9. **性能与扩展**: - Liferay 可以部署在多种应用服务器上,如 Tomcat、WebSphere 和 JBoss。 - 为了优化性能,Liferay 支持...
综上所述,Liferay Portal不仅为企业提供了一个强大的门户平台,同时也为开发者提供了一套完整的开发框架和工具集。无论是对于希望快速搭建企业门户的用户,还是想要深入探索Liferay开发的开发者,这份快速入门指南...
Liferay是一个开源的企业级内容管理系统,常用于构建数字体验平台,提供丰富的功能,如门户管理、社交媒体整合、内容管理、工作流程等。本套资料涵盖了用户配置、系统接口设计以及实际开发应用等多个关键领域。 ...
Liferay 6.2是一款流行的开源企业级门户平台,它提供了丰富的功能,包括内容管理、社交媒体集成、工作流程以及自定义开发能力。本指南将基于提供的"liferay 6.2开发指南+用户手册"来深入讲解其核心知识点。 1. **...
Liferay 6.2 是一个开源的企业级门户平台,它提供了丰富的功能和高度可扩展性,适合构建企业内部或外部的协作、信息共享和业务应用集成的网站。本开发指南将帮助开发者深入理解 Liferay 的核心概念和开发流程,以便...
WebService是一种允许不同应用系统之间进行通信的技术,它提供了一个标准的接口,使不同的应用程序能够交换数据和服务。在Liferay中,可以通过以下步骤创建自己的WebService: 1. 在`service.xml`中编辑,设置`...
Liferay还提供了一套服务层,允许开发者访问和操作Liferay的数据模型,如用户、组织、群组和内容。通过Service Builder,你可以自定义服务接口和实现,轻松地与数据库进行交互。本书会详细讲解如何使用Service ...
用于创建和操作Liferay的数据模型,自动生成服务接口、实现、DAO和实体类,简化数据库交互。 8. **Security和权限管理** Liferay Portal提供强大的角色和权限系统,开发者可以为portlet设置访问控制,如只允许...
在2014年之前,Liferay主要通过SOAP协议提供远程服务接口。然而,随着JSON格式在Web服务中的广泛应用,Liferay开始重构其远程服务,引入了基于JSON的远程服务(JSONWS),使得开发者可以更加灵活地调用Liferay提供的...
Liferay作为一个开源的企业级门户平台,提供了多种方式来实现组件间的通信,以支持复杂的应用场景。本实例将深入探讨如何在Liferay中进行跨组件通信,并以`test-portlet`为例进行详细讲解。 首先,我们需要理解...