我不确定我是否将洋葱与白菜进行比较。但我真的很困惑portlet和一个Web服务。我知道Web服务正在将您的应用程序中的软件组件作为其他应用程序的服务,但对我而言,它类似于响应请求的portlet。我知道我的理解是让你(Portlet和SAAS开发人员)真的很不高兴。但我需要对此有所了解。
为什么我不能将请求响应用于类似于Web服务的portlet工作? 如果是,使用Web服务比使用portlet有什么好处? 如果没有,那么什么是缺乏充当Web服务的portlet?
我是portlet开发的新手。请不要诅咒我这个问题。
请建议。
修改 大多数答案都说portlet是一个UI组件。我的客户要求我在liferay中创建一个web服务。那么将portlet作为Web服务吗?如果是,请提供指针或代码片段吗?
答案 0 :(得分:2)
专门针对Liferay解决'编辑'......
Liferay插件项目可以在不需要太多工作的情况下公开Web服务。
Liferay Service Builder实际上具有工具,因此您可以创建由Liferay数据库中的表支持的SOAP Web服务或JSON Web服务(并在现有数据库表上进行查询)。在JSON Web服务的情况下,生成的URL方案不是RESTful(遗憾的是),但是它已经很好地定义了。通过您的一些工作,您也可以将Liferay的权限系统强加于Web服务调用。
这是Liferay Developer's Guide中的合理起点:
请参阅该页面上指向SOAP和JSON服务的链接。
请注意,'portlet'只是一种Liferay插件。 Web服务工具是服务层的一部分 - 许多插件类型都可以使用它。因此,在Liferay中创建Web服务不一定涉及portlet,您可以创建一个没有与之关联的可视组件的Web服务。
答案 1 :(得分:1)
Portlet是您创建用于添加和显示内容的区域。 Portlet可以添加到中心主体区域的左侧和右侧,并且可以包含无数内容,包括新闻,事件,日历,RSS源,集合,纯文本等。此外,您还可以设置显示portlet的属性和策略。
你想在什么时候使用portlet 你有想要特别关注的内容,比如新闻。 您需要指定项目的配置数据。 - 即要显示的条目数。 您希望为内容编辑者提供有关显示内容的时间和位置的选择。 您只想将其展示给某些群组或用户。
另一方面,网络服务:
使应用程序可以公开其服务 “progammatically”,即服务可以由程序调用
启用在其他计算机上运行的软件(可以是台式机,移动电话,PDA等)来调用Web应用程序公开的操作
如果你试图在历史上确定主要差异门户网站,那么portlet有三层架构(客户端,中间层,后端),这会造成两个弱点:
答案 2 :(得分:0)
Portlet旨在成为门户解决方案中的用户界面组件。
Web服务提供与通常使用SOAP,REST,JMS或其他相关
的系统进行远程交互的功能它们提供完全独立的功能。你得到的最接近的是portlet中的serveResource
方法。此功能用于从portlet(例如PDF文档或AJAX响应)提供各种类型的内容,而无需执行整页请求。