2011-11-23 84 views
1

我打算开发基于web服务(axis2)和android(客户端)的应用程序。 我现在正在规划我的系统的逻辑架构,我认为它应该像SOA架构。我已经看到SOA架构基于图层。webservices和android的体系结构

所以,这将是我的应用程序“正确”的逻辑架构? (当然,有些变化)

http://geeks.ms/cfs-filesystemfile.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/unai/DDD_5F00_NLAYER_5F00_ARCHITECTURE_5F00_SMALL_5F00_6ADA95E1.png

Android的代码(活动),将是对表示层?

编辑 四月现在2014

,3年后有一些经验...剩下的就是最好的:)

+0

你不能使用REST?为什么你特别选择Axis2(即WS - 。*规范约束)? – Renaud

+0

Axis2是一个约束。但是,REST如何改变架构?谢谢。 –

回答

1

警告,可能这个答案并不是在所有的答案,不过无论如何,这是我的想法。

我绝对不是SOA专家,但由于SOA可以用REST实现,因此它不应该对SOA架构产生任何影响。 Android已准备好REST(请参阅that Google IO 2010 session on REST),并且Android上只有很少的SOAP支持(afaik,但我可能是错的)。

在某些时候,您必须评估互操作性的可行性。在您的Axis WS- *与任何现有的Android SOAP支持(例如众所周知的ksoap2 project)之间。结果可能不会对您的架构设计产生影响。

这里的要点是:如果您确实使用Rampart使用WS-Security,例如,在Axis2之上,在我看来,ksoap可能与您的服务提供商(技术上)完全相互影响的可能性很小。一方面,如果服务简单并且可以用ksoap2绑定,那么很好,继续。另一方面,如果你使用而不是简单的安全或认证方案,那么在android上使用简单的 SOAP支持完成任务可能只是一场噩梦。在最新的案例中,由于REST方法似乎是Android的首选理念,因此您可能会面临决定在您的Axis2业务WS和Android客户端应用程序之间为Android设置一个专用于REST的代理。

希望它可以有任何帮助。

+0

谢谢。我正在使用kso​​ap2,但我还没有考虑到安全性。什么是“简单认证方案”?感谢Google IO的链接,我会考虑使用REST。 –

+0

Rails提供了一个有趣的安全http://guides.rubyonrails.org/security.html,我会尽力挖掘更多的明天 – Renaud

+0

我不明白为什么Axis 2是一个输入约束与没有安全设计的结合还是没有架构......我假设您将使用Axis 2来处理具有现有业务模型的特定WS。 – Renaud

1

也许你甚至可以尝试SOAP。 Android支持SOAP Web服务并提供ksoap2库,您可以使用它轻松发送请求并从服务器获取响应。

对于初学者只是检查this了。现在,最新版本的ksoap也支持传递Object Arrays。

对于ksoap2的更多信息,我建议阅读this

干杯

所有最优秀的

+0

我已经在使用kso​​ap2了,谢谢。但我不知道整个系统的结构如何:表示层,Web服务层,域层,DAL?这对Web服务是否正确? –

+1

这应该有助于你理解:http://stackoverflow.com/questions/3968956/designing-a-system-with-a-presentation-layer-and-a-web-service-based-api –