941
I Use This!
Activity Not Available

News

Analyzed 9 months ago. based on code collected 9 months ago.
Posted 6 days ago
The name of the "read" and "connection" timeout properties is not standardized in Java EE 7. For TomEE / CXF clients you will have to use the "CXF-proprietary" names: import javax.ws.rs.client.Client; import javax.ws.rs.client.ClientBuilder; Client ... [More] client = ClientBuilder.newClient(); client.property("http.connection.timeout", 500L); client.property("http.receive.timeout", 500L); The name differs in Jersey (used in GlassFish / Payara), but the semantics are the same. See you at Java EE Microservices. Is Munich's airport too far? Learn from home: javaeemicro.services. Real World Java EE Workshops [Airport Munich]> [Less]
Posted 10 days ago
Create a Thin WAR Java EE project. Name it "micro". Create a Dockerfile in project folder with the following content: FROM airhacks/wildfly COPY ./target/micro.war ${DEPLOYMENT_DIR} Also airhacks/payara, airhacks/tomee images are ... [More] available from https://hub.docker.com/u/airhacks/. The docker files are maintained in https://github.com/AdamBien/docklands. Perform build from project folder: mvn package && docker build -t airhacks/micro . Run the project: docker run -d -p 8080:8080 --name micro airhacks/micro See it in action: https://www.youtube.com/watch?v=P6Bk3Eiz3kE. Behind the scenes: CentOS 7, JDK 1.8, the choosen application server (WildFly, Payara, TomEE) is going to be downloaded the first time (~560 MB, see https://youtu.be/hoqJdH87e7g) from https://hub.docker.com/u/airhacks/. All subsequent builds will only rebuild the Thin WAR -- it will take milliseconds. The smaller the WAR, the higher the productivity: https://youtu.be/5N4EUDhrkec See you at Java EE Workshops at Munich Airport, Terminal 2 or Virtual Dedicated Workshops / consulting. Is Munich's airport too far? Learn from home: airhacks.io. Real World Java EE Workshops [Airport Munich]> [Less]
Posted 10 days ago
Create a Thin WAR Java EE project. Name it "micro". Create a Dockerfile in project folder with the following content: FROM airhacks/wildfly COPY ./target/micro.war ${DEPLOYMENT_DIR} Also airhacks/payara, airhacks/tomee images are ... [More] available from https://hub.docker.com/u/airhacks/. The docker files are maintained in https://github.com/AdamBien/docklands. Perform build from project folder: mvn package && docker build -t airhacks/micro . Run the project: docker run -d -p 8080:8080 --name micro airhacks/micro See it in action: https://www.youtube.com/watch?v=P6Bk3Eiz3kE. Behind the scenes: CentOS 7, JDK 1.8, the choosen application server (WildFly, Payara, TomEE) is going to be downloaded the first time (~560 MB, see https://youtu.be/hoqJdH87e7g) from https://hub.docker.com/u/airhacks/. All subsequent builds will only build the Thin WAR -- it will take milliseconds. The smaller the WAR, the better the productivity: https://youtu.be/5N4EUDhrkec See you at Java EE Workshops at Munich Airport, Terminal 2 or Virtual Dedicated Workshops / consulting. Is Munich's airport too far? Learn from home: airhacks.io. Real World Java EE Workshops [Airport Munich]> [Less]
Posted 14 days ago
55 mins, 125 live attendees, ~20 topics ranging from Gartner and Java EE, BCE architecture, modular JSF, monitoring, REST refactoring, how to learn Java EE (see all topics), or the 38th airhacks.tv episode is available: Any questions left? A ... [More] fresh question queue is setup. Ask now: https://gist.github.com/AdamBien/b1a66dafdae21c0c40d647f05f44e57c and see you at June, 5th, 2017, 6 pm CET. See you at Java EE Workshops at Munich Airport, Terminal 2 or Virtual Dedicated Workshops / consulting. Is Munich's airport too far? Learn from home: airhacks.io. Real World Java EE Workshops [Airport Munich]> [Less]
Posted 16 days ago
I took a snapshot down into a Aloa Vera or similar plant. The camera automatically focused onto the ground and the picture shows very clear a leaf at the bottom of this plant. Then I manually focused on that little animal I discovered there. Two photos taken from the same position, showing very different details. […]
Posted 18 days ago
Create Thin WAR project with: mvn archetype:generate -Dfilter=com.airhacks:javaee7-essentials-archetype. (see: Setting Up Java EE 7 Projects With Maven 3) Result: 24 lines of pom.xml. The pom.xml only conatins a single dependency to Java EE 7 ... [More] API. In real world projects you will only need to add test dependencies like JUnit or Mockito. The file beans.xml (one tag), was created to enable Depenency Injection (DI) everywhere and the annotated class JAXRSConfiguration activates JAX-RS under the resources uri. The generated Thin WAR project is a production ready template for Java EE / Microservices / Thin WARs. Create a JAX-RS resource, like .e.g. import javax.ws.rs.GET; import javax.ws.rs.Path; @Path("message") public class HelloResource { @GET public String message() { return "works!"; } } Perform mvn package and copy the Thin WAR ./target/[NAME].war (~4 kB) into the autodeploy / deploy folder of Java EE 6 / 7 / 8 application server of your choice. ...or download NetBeans "Java EE Edition", open the project, and click "run". Open the browser with: http://localhost:8080/[NAME]/resources/message Use a full profile Java EE application servers (Payara, WildFly, TomEE, WebLogic, Websphere Liberty Profile). The download size varies between 55 MB and 200 MB. The runtime overhead is around 50 MB RAM (see live memory profiling: "The (RAM) Overhead Of Java EE Application Servers"). For mainstream (microservices) projects there is no further tuning, configuration or optimization required. See you at Java EE Workshops at Munich Airport, Terminal 2 or Virtual Dedicated Workshops / consulting. Is Munich's airport too far? Learn from home: airhacks.io. Real World Java EE Workshops [Airport Munich]> [Less]
Posted 21 days ago
After tip #1, last week, there's the inevitable tip #2, and the plan is to have another quick tip like this every week. If anyone out there has similar tips to these to share, i.e., handy insights into NetBeans that can be explained in a few minutes ... [More] , let me know. No worries, though, I have a long list, enough for several months, in fact! Drum roll... two minute NetBeans tips, part 2 (which turns out to be 4 minutes in length): Direct link to the above: https://www.youtube.com/watch?v=jnsYlxP0UWE [Less]
Posted 21 days ago
Questions (gist) for the 38th airhacks.tv, May, 8th, 7pm (exceptionally one hour later): Java EE 8 and Oracle Code Conference News Gartner and obsolete Java EE BCE and loggers, custom validators and "helpers" Wider topic: what are helper ... [More] classes? Modular JSF? Firehose: performance and scalability considerations Storing / caching translations Refactoring GET endpoints with query params Dealing with Jackson "Unknown Properties" My favorite application servers Cross cutting libs (e.g. JCache) and docker CDI Events and generic types IBM, RedHat and Project Jigsaw How to approach effectively Java EE Application servers, connection pools and clustering Ask questions during the show via twitter mentioning me: http://twitter.com/AdamBien (@AdamBien) or using the hashtag: #airhacks. You can join the Q&A session live each first Monday of month, 6 P.M at airhacks.tv or http://www.ustream.tv/channel/adambien See you at Java EE Workshops at Munich Airport, Terminal 2 or Virtual Dedicated Workshops / consulting. Is Munich's airport too far? Learn from home: airhacks.io. Real World Java EE Workshops [Airport Munich]> [Less]
Posted 22 days ago
Today we’ve got engaged into particularly interesting discussion: Can DukeScript benefit from Java9? Java9 is feature freezed and it’s release date seem to be unstoppable: thus it is really the right time to look at its features and analyze how an ... [More] independent and extremely portable project like DukeScript could benefit from the new major Java release. Here are few things that crossed our minds. Modularity - Meaning Small DukeScript systems are designed to be heavily portable. They fit into your phone, iPad or even a browser. As such it seams fine that Java9 defines so called java.base module - e.g. the smallest independent deployment unit one can use when bundling a Java9 application. That is indeed good. On the other hand the smallest unit still has more than three thousand of classes. E.g. it is not as small as it could be: for example when running DukeScript in a browser, it is possible to reduce the application to less than 1000 of classes - so there is still a room for improvement. But at least the Java maintainers are heading in the right direction. JShell It is common in the world of browsers that developers have an interactive console: a place to evaluate its queries while the program is running. JShell brings the same possibilities into Java9 and thus also into DukeScript based applications. In theory we could give you the same console as JavaScript programmers have, but let you code in Java. Let you talk directly to your application: use for example typed JQuery to manipulate with DOM elements. One question remains: is such feature what you want and need? Something Else There is said to be 55 new features in the up-coming release of Java9. We don’t see all of them to directly fit into the charter of DukeScript, but we may be missing something: What is your favorite feature and how it could enhance DukeScript? Question for You! How would you like us enhance DukeScript to benefit from Java9 features? Let us know: either by twitter or by participating in the discussion below. Thanks for helping to make DukeScript better. [Less]
Posted 24 days ago
I have to admit I am currently at a midlife crisis. I dedicated my last twenty years to promotion of a proper API design. I wrote TheAPIBook, I tried to propagate the principles of good APIDesign and modularity wherever I could. However I am tired... ... [More] Because it is always the same. Why do I have ask: where is your Usecase? What this method is good for? What do you actually want to achieve with this method/class/type? Have you considered the difference between APIvsSPI aspects of your design? Do you have a unit test? Is your proposed change BackwardCompatible? Do you have an evolution story for your design? Is your solution optimized for your comfort or comfort of users of your API? And so on and so on... People should read TheAPIBook before attempting to design an API, but they don't and they make the same mistakes again and again. I got so disgust that I feel sick, physically sick, when I have to think about API design. Last weekend Toni asked me to review an API he is creating and showed me what he has. I starred at him, then at the code and at him, etc. for three minutes before I could say a word. Then I had to apologize and describe my current MidlifeCrisis. When I look at an API these days, all I see is the wasted potential the API could have, but it doesn't and never will, because the amount of investment I would have to do to educate the API stakeholder is so huge, that I just don't want to make it. Anyway, if you have an API that you'd like me to improve, let me know. If I see real interest in proper API design my disgust and MidlifeCrisis may go away... --JaroslavTulach 16:08, 5 May 2017 (UTC) [Less]