-
Notifications
You must be signed in to change notification settings - Fork 302
Conversation
To be honest: our archetype was/is kind of a mess (contains restaurant specific leftovers, code with smells and anti-patterns, etc.). I am still in the process of heavy rework. Contribution and feedback is most welcome.
|
Please add the maven license plugin with some configuration-options.
and
The plugin can also be activated to run during build
Thank you. The src/license/THIRD-PARTY.properties file contains additional license declarations for used dependencies that can not automatically get detected by maven license plugin. The content is of course project-specific. For mts-core the following content is correct:
|
We have a problem here:
I would love to get some support or hints on this. It seems that we have a strange but severe issue here.
I found the source of the actual problem:
So I forgot to remove the |
Build broke because spring boot plugin already requires java8. This is actually not so great. Should I upgrade This is the failing class: So this is because of UPDATE: I tied the version of this plugin via |
@MarcoRose I have integrated license-maven-plugin. To be honest I can not see a real benefit of this plugin over the already integrated |
Both
as well as
Does not have any effect on the report. No matter if I put this into |
…passes (locally not reproducible even with Java 1.7)
I can instantiate and run the archetype with oracle but booting the spring boot app leads to the same error that @vapadwal was stating. The workarounds would maybe fix this for oracle but again break it for other DBs. The easiest fix for now would be to simply put only a small BLOB (picture) in our masterdata SQL. Or as an alternative and as questioned from the start remove the entire BLOB stuff including all its code from the archetype. |
I was able to replace the BLOB with something smaller that is now working with oracle.
Actually the column |
Okay. Works with oracle if we put the column name in quotes: @column(""timestamp") |
So now I am completed. I could not quickly test that it is still working with MS SQL-Server or postgres but it works with h2, hsqldb and oracle (tested with XE) so I guess it should also work for the others if it used to work before. |
Build and tests worked locally with maven. No idea why it fails with travis now. This PR is really driving me nuts. |
…ITALIZED for some strange reason and h2 treats names case-sensitive)
I have test with the new changes again and below are some more issues found Issue 1: Getting below exception when executed mvn install against oasp4j apableBeanFactory.java:1624) I think we need timestamp in quotes. refer to below file Issue 2: Created a project in h2 and oracle got the below error both in h2 and oracle Caused by: org.hibernate.DuplicateMappingException: Table [RevInfo] contains logical column name [timestamp] referring to multiple physical column names: ["timestamp"], [timestamp] Because of the above issue I am not able to test further. Issue 3 : The project get created via console(using mvn -DarchetypeVersion=3.0.0-SNAPSHOT -...... command) but when tried it creating via eclipse got the below error Unable to create project from archetype [io.oasp.java.templates:oasp4j-template-server:3.0.0-SNAPSHOT] Might be because of velocity error below https://github.com/hohwille/oasp4j/blob/feature-template/templates/server/src/main/resources/archetype-resources/__batch__/src/test/java/__packageInPathFormat__/general/common/base/test/TestUtil.java#L31 |
…ITALIZED for some strange reason and h2 treats names case-sensitive)
@vapadwal thanks for testing and your feedback. For issue 2 I have the opposite effect. It did not work without the quotes and therefore I did all the changes. I can test everything locally with OracleXE and it is working in my case. So maybe it works with my OralceXE version (11.2.0) but not with yours. In that case I rather have to give up for the moment. To repeat myself I just tried to pick up what @kiran-vadla once did here and it also worked perfectly for my local OracleXE. I am not sure how we should handle such cases in general but our problem somehow is that we have a buggy and crappy template currently but creating a PR to improve requires ultimate perfection and takes months or years. I guess most other contributors would have given up with their PR way before. So I guess I should also take the chance to open a community discussion outside this PR about how we want to work in such cases in the future. Maybe it is better to finally accept and merge PRs and rather open a follow up issue for further improvements than getting stuck so badly. Do not get me wrong here: Your feedback is valuable, perfect and helps to improve quality. Also I really messed up some things that you digged out and it is great that we fixed this before projects ran into the issue. For issue 3 I am also a little bit puzzled but IMHO this is as following:
So to make things clear: This error does not happen when I test it. My environment:
My invocation to create the project was e.g.:
If we can not proceed here we can as alternative drop all these features and simply remove the javadoc links entirely reducing the quality a little but getting away from this velocity issues. |
IMHO the remaining question is if that trick/workaround/hack is actually evil: If yes - what is the alternative to make this work with all the different databases. SQL aims to be a standard but actually it is not and is rather a pain. |
For issue 3, i.e. velocity issue: For timestamp Issue " what is the alternative to make this work with all the different databases " |
I agree that we should not use reserved keywords. However, this big issue here is that projects are already actively using this code and would then be forced to update their DBs in production. I do not see this as a good option right now - IMHO we would make some of our users mad and they might go away from Devon/OASP then... WDYT? |
I have uninstall my oraclexe and again reinstalled it , Now its running properly in oracle (Not sure what was the problem there) There is still issue with timestamp column running for H2. This is because of the changes (@column(name = ""timestamp"")) in AdvancedRevisionEntity.java As we are escaping timestamp we need to put quotes for timestamp in below file. This is for H2 case Now with this changes all the timestamp issue will be fixed. |
…s with older versions of velocity still present in e.g. m2e preventing the archetype project to be properly created.
@vapadwal thanks for your patience and continuous testing and reviewing this PR. It might have been tedious but I hope we now finally got it well!
I fixed this be stop using this advanced velocity feature and simply kick out the javadoc link that caused velocity to fail.
I also fixed this last occurrence. I missed it because it is not used by the tests but "only" if you actually run the archetype project with h2 what I never properly tested in the hurry. Thanks for your excellent quality assurance! |
Fine now we have a technical travis issue:
|
Tested the PR and works fine. |
I am reworking our maven archetype (project template):
This PR is now complete. Still we can discuss to remove BinaryObject but IMHO it is easier to keep this out here and if we want to do that simply create another PR afterwards. Please still see my open issues in the list on the first comment.