• 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
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Enthuware standard tests doubts

 
Ranch Hand
Posts: 383
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi. Please see the list of my doubts and comment on it if possible

Test #2:

com.enthuware.ets.scbcd.v5.2.19 the default name in the description is incorrect (should use a / to separate the field from classname)

com.enthuware.ets.scbcd.v5.1.23 the en-entry-name element is invalid, missing the "Bean" suffix, and the default name given is invalid (the same as above)

com.enthuware.ets.scbcd.v5.2.278 option d) "it can be used to update entity beans" is misleading, I initially thought it asks about updating data in EJB 2.1 CMP beans; some questions explicitly state that they ask about EJB 3.0 entities, some don't, which is inconsistent

com.enthuware.ets.scbcd.v5.2.128 option a) "select new Integer(avg(s.score)) from Student s" in invalid, and has this explanation: "Doing new Integer here is invalid syntax. Also, AVG function always returns Double." I think the things that are wrong are that it must be "select java.lang.Integer" and also that avg() returns a Double, whereas the explanation would imply that using "select new" is invalid

com.enthuware.ets.scbcd.v5.2.210 in the object to DnD, there are two NULL strings, and when you use the second one from the top, it works, but when the first one is used, the query is rated as incorrect, which is weird

com.enthuware.ets.scbcd.v5.2.329 option c) is a little misleading. it says "Path expressions that contain NULL values during evaluation return NULL values", however, only for terminal associations it behaves like this. in non-terminal associations (as it uses an inner join) such relationships are simply not taken into account when returning results, so they don't return null values at all

com.enthuware.ets.scbcd.v5.2.257 option c) "Ensuring that all the declared EJB references are bound to the homes of enterprise beans that exist in the operational environment." - does it really have to mention "homes"? as we know 3.0 don't need a home interface at all

com.enthuware.ets.scbcd.v5.2.96 option c) "Class files, persistence.xml file, and orm.xml" is said to be valid, with explanation: "orm.xml will always be examined because any mapping information given in orm.xml overrides the information present in the classes in the form of annotations.". This is only partially correct, as if the orm.xml file uses metadata-complete or the entity elements use xml-mapping-metadata-complete and are set to true, the annotations are not processed at all. Thus, the classes cannot be said to be processed always, option d) is valid

com.enthuware.ets.scbcd.v5.2.122 the code is invalid, according to JPA specs, section 2.1.7: "If there is an association between two entities, one of the following relationship modeling annotations must be applied to the corresponding persistent property or instance variable of the referencing entity: OneToOne, OneToMany, ManyToOne, ManyToMany.". The code does not specify any annotation , so it is wrong.



Test #3:
com.enthuware.ets.scbcd.v5.2.98 @OneToMany need a mappedBy attribute for a bidirectional association (Javadoc for this attribute dictates this), the question doesn't use it

com.enthuware.ets.scbcd.v5.2.54 The question is: "Identify the correct statements about a MDB client...", and the answer is that it cannot access the methods of the MDB, but there is no such thing as a MDB client - so even the answer is logically incorrect because the full sentence would say "A MDB client cannot access its methods" but there is no client, there can only be code that sends messages to the bean's destination

com.enthuware.ets.scbcd.v5.2.150 it says that the beans does not call setRollbackOnly(true), but there is no such method; also, the question doesn't say if the rollback attribute is set to true or false

com.enthuware.ets.scbcd.v5.2.106 a typo in @OneTOMany in option c) (should be @OneToMany)

com.enthuware.ets.scbcd.v5.2.283 the code for lookup is wrong - it has additional parameter that is the home type, and an erroneous closing bracket - this made me think a PortableRemoteObject.narrow() call was intended and missing, and I thought the client was remote

com.enthuware.ets.scbcd.v5.2.324 explanation for option d) is "There is no requirement on the getter and setter methods in terms of accessibility. It depends of the requirements of the application." but the question or option d) never mentions accessibility (it mentions abstract); when accessibility is considered the specs say (2.1.1, page 18, second bullet): " If the entity has property-based access (...) The property accessor methods must be public or protected.", so there actually is a requirement on that, but only for method-access, but the question should specify what access it is asking about, I think it could clarify

com.enthuware.ets.scbcd.v5.2.62 the last option should be changed to say it "must provide a public no-arg constructor", as public is a requirement



Cheers,
Raf
 
Enthuware Software Support
Posts: 4803
52
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Raf,
I sincerely thank you for your effort in pointing out the errors in the question bank. Most of them have been fixed and I have forworded a couple of them for further investigation (e.g. the Drag and Drop one).
As a token of our appreciation for your feedback, we will provide you a full refund for your order. Please do let me know your OrderId (through an email to support@...) and I will do the rest.

thanks again,
Paul.
 
Raf Szczypiorski
Ranch Hand
Posts: 383
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Paul,

there is really no need for the refund, it was you guys who did the hard work after all. So let's leave it the way it is.
I am happy my comments are not treated as criticism, because for a moment there I thought that it might look like this. So, really happy that you take the time to check my notes, and change the question bank instantly when there is a real issue. That's great for everyone.

Raf
 
Ranch Hand
Posts: 856
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Raf it seems you are so good. Are you reading the specifications throughly ?
 
Raf Szczypiorski
Ranch Hand
Posts: 383
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Yes, I read the specs thoroughly (I would suggest everyone learning EJB to read it, as it clears a lot of doubts) and was making notes along the way, and now from time to time I peek inside them, and check with the specs when in doubt. As for being good, we will see about that on Tuesday, as this is my exam day ;-)

Raf
 
Raf Szczypiorski
Ranch Hand
Posts: 383
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Please see my comments for the questions from day 4 test:

com.enthuware.ets.scbcd.v5.2.39 the explanation says that when no @WebMethod is used, all methods are exposed; it should say all *public* methods are exposed

com.enthuware.ets.scbcd.v5.2.301 one of the options says that an javax.ejb.TransactionRolledbackLocalException is thrown, but this is only true for ejb 2.1; for 3.0, it would be javax.ejb.EJBTransactionRolledbackException (local); might be worth mentioning that it is a 2.1 bean, or changing the exception type to the other one mentioned above, and mentioning that it is an 3.0 bean

com.enthuware.ets.scbcd.v5.2.320 the explanation should say "This is wrong because only entities belonging to the same abstract persistence schema *type* can be compared."

com.enthuware.ets.scbcd.v5.2.144 option one has a typo in NOT_SUPPORTED (missing the underscore)

com.enthuware.ets.scbcd.v5.2.125 the entity Student has a collection of presentations, but the field is not annotated, and it is required by the specs (2.1.7, page 24) "If there is an association between two entities, one of the following relationship modeling annotations *must* be applied to the corresponding persistent property or instance variable of the referencing entity: OneToOne, OneToMany, ManyToOne, ManyToMany."

Raf
 
Amandeep Singh
Ranch Hand
Posts: 856
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Raf my exam is on Monday, can you tell me your mock exam score's for all test's in first time attempt....

 
Raf Szczypiorski
Ranch Hand
Posts: 383
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Please see my comments on the final test:

com.enthuware.ets.scbcd.v5.2.137 the bean in invalid, as it never specifies its interface (should either implement one, or specify it in @Local / @Remote

com.enthuware.ets.scbcd.v5.2.331 a JMS MDB doesn't have to implement javax.jms.MessageListener, it may specify it with @MessageDriven(messageListenerInterface); specs section 5.4.2 page 106: "The message-driven bean class must implement the appropriate message listener interface for the messaging type that the message-driven bean supports *or* specify the message listener interface using the
MessageDriven metadata annotation or the messaging-type deployment descriptor element."

com.enthuware.ets.scbcd.v5.2.49 onMessage is only used in JMS MDB, it is possible that other types will use completely different methods; onMessage may not throw checked exceptions, because the interface does not allow it, but the question should be more specific, mentioning that it asks about a JMS bean, as other types may throw whatever exception type they want (except for RemoteException), which makes option c) invalid

com.enthuware.ets.scbcd.v5.2.99 option e) should be "It uses database space inefficiently" (there is a redundant "is")

com.enthuware.ets.scbcd.v5.2.17 the TellerBean is not actually an EJB, as it doesn't use any of: @Statefull, @Stateless, @MessageDriven, and it doesn't mention anything about ejb-jar.xml

com.enthuware.ets.scbcd.v5.2.261 this question asks about 2.1 entity beans' relationships, this is not a requirement of SCBCD5

com.enthuware.ets.scbcd.v5.2.34 TellerBean is not an EJB as it is not annotated as such, and the question explicitly states that there is not ejb-jar.xml


So, I finished with the tests. I would like to thank you for such a great tool and question set!

Raf
 
Raf Szczypiorski
Ranch Hand
Posts: 383
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Amandeep,

I scored: 93%, 95%, 92%, 95%, and 93%.
Note that I reported a few questions I failed to answer correctly, they have been fixed, and my answers would be correct after fixing, and the scores would be a little higher. The last 2 tests' comments still haven't been looked into, I suppose.
The tests catch me off guard sometimes, I hope the final test will not!

Raf
 
Amandeep Singh
Ranch Hand
Posts: 856
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
thanks Raf for your reply.

It's really amazing you scored this much in first attempt's.

Well i scored this much only in 3rd attempt.
Any lesson for me - i have 1 day more left before my exam.
 
Raf Szczypiorski
Ranch Hand
Posts: 383
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Not really, just go there, sit for 2 hours, and enjoy your new cert ;-) I have two more day, so I will probably go through my notes, and will read the specs on security, as these questions catch me most of the time.
Good luck!

Raf
 
Paul Anilprem
Enthuware Software Support
Posts: 4803
52
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Thanks again, Raf! They have been fixed.

Best of luck for your exam
 
Greenhorn
Posts: 3
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi all,

about the question com.enthuware.ets.scbcd.v5.2.39, all public method must be exposed, but only if the method belongs to the TellerRemote remote interface, correct ?

Thank you all.
 
Ranch Hand
Posts: 133
Eclipse IDE Spring Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Enio Pereira wrote:Hi all,

about the question com.enthuware.ets.scbcd.v5.2.39, all public method must be exposed, but only if the method belongs to the TellerRemote remote interface, correct ?

Thank you all.



Right. All methods (every method has public qualifier in the interface) of TellerRemote will be exposed as a webservice method. Therefore in my opinion the correct answer is a) not b).
 
Greenhorn
Posts: 1
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Krzysztof Koziol wrote:

Enio Pereira wrote:Hi all,

about the question com.enthuware.ets.scbcd.v5.2.39, all public method must be exposed, but only if the method belongs to the TellerRemote remote interface, correct ?

Thank you all.



Right. All methods (every method has public qualifier in the interface) of TellerRemote will be exposed as a webservice method. Therefore in my opinion the correct answer is a) not b).



See Web Services Metadata for the Java Platform. http://jcp.org/en/jsr/detail?id=181.

>> If the implementation bean does not implement a service endpoint interface and
>> there are no @WebMethod annotations in the implementation bean (excluding
>> @WebMethod annotations used to exclude inherited @WebMethods), all public
>> methods other than those inherited from java.lang.Object will be exposed as Web
>> Service operations ...

So if TellerRemote is the remote business interface and not the service endpoint interface as
the name suggests, then b) is the right answer. For a correct question the type of the
implemented interface should be noted.

Regards Michael
 
reply
    Bookmark Topic Watch Topic
  • New Topic