Win a copy of Node.js Design Patterns: Design and implement production-grade Node.js applications using proven patterns and techniques this week in the Server-Side JavaScript and NodeJS forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Ron McLeod
  • Rob Spoor
  • Tim Cooke
  • Junilu Lacar
Sheriffs:
  • Henry Wong
  • Liutauras Vilda
  • Jeanne Boyarsky
Saloon Keepers:
  • Jesse Silverman
  • Tim Holloway
  • Stephan van Hulst
  • Tim Moores
  • Carey Brown
Bartenders:
  • Al Hobbs
  • Mikalai Zaikin
  • Piet Souris

Part 2 : Assumptions

 
Ranch Hand
Posts: 37
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hello everyone,

can somebody please help me with the below assumptions ?

1. My assignment talks about an External system providing search/retrieval kind of web service. Will it fair to assume that such a search service would support features like pagination and security or would this be considered simplifying the solution ? I am confused here because nothing has been given about the capabilities of this external system or its web services and my design could vary based on this.

2. I need to persist a unidirectional 1-to-many relationship using JPA but JPA 1.0(JEE 5) does not support this. I could either change the given model relationship to bi-directional or document to use a provider supported extension feature to achieve the given navigability and leave the model as it is. Which is a lesser evil here ?Or am I going into too low level details and can just leave this decision to developers and move on ?

Thanks in advance,
 
author & internet detective
Posts: 40748
827
Eclipse IDE VI Editor Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Saket,
1) It's hard to say because it depends on your problem. Paging doesn't sound important so that seems safe. For security, it is likely the remote service will not handle security the way your application needs. Since security is a core JEE concept, I'd be especially wary of oversimplifying in this area.

2) You can absolutely leave this to the (fictional) developers. I made an assumptions that the developers know JPA and JSF and can be trusted to implement given a high level design. The fact that JPA 1 doesn't support a relationship type is an implementation detail that would need to be worked around in practice. The actual design doesn't care about that. And in a later version when it is supported, the design doesn't change. The opportunity for a better implementation merely exists.
 
Saket Mittal
Ranch Hand
Posts: 37
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Thanks for your reply Jeanne. My external system is a kind of Inventory System which is searched for products and their availability. So for such a 'read-only' service assuming that the provider supports at least transport level security, such as HTTP Basic/Digest and SSL if not message level security would be fine right ?
 
Jeanne Boyarsky
author & internet detective
Posts: 40748
827
Eclipse IDE VI Editor Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Saket,
Correct. And any more security you need specific to the app would be in your part of the design.
 
Saket Mittal
Ranch Hand
Posts: 37
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Jeanne Boyarsky wrote:Saket,
Correct. And any more security you need specific to the app would be in your part of the design.



Thanks Jeanne.
 
Wanna see my flashlight? How about this tiny ad?
Thread Boost feature
https://coderanch.com/t/674455/Thread-Boost-feature
reply
    Bookmark Topic Watch Topic
  • New Topic