Very High Activity
I Use This!


Analyzed 11 days ago. based on code collected 11 days ago.
Posted 1 day ago
DefaultMethods is a new feature of JDK8 that we many cried for. Yet, they carry certain drawbacks with themselves. For example one can write a valid Java program that compiles and works on JDK7, but is broken on JDK8! --JaroslavTulach 10:42, 24 September 2016 (UTC)
Posted 2 days ago
Let's say you have a suite of Cloud applications and you want them to display customers in a standardized way: If that's your business scenario, then Oracle JET composite components are a perfect fit. Here's what an absolutely minimal ... [More] Oracle JET composite component looks like:  The above is really trivial. Here's the content of "customer.html": Here's "customer.json": { "properties": { "name": { "description": "Customer name.", "type": "string" }, "city": { "description": "Customer location.", "type": "string" } } } About the properties above, see the below: And here's "loader.js", which connects the above two together and provides "customer" as a new HTML element: define(['ojs/ojcore', 'text!./customer.html', 'text!./customer.json', 'ojs/ojcomposite'], function(oj, view, metadata) { oj.Composite.register('customer', { view: {inline: view}, metadata: {inline: JSON.parse(metadata)} }); } ); In a more complex scenario, you're also able to include CSS stylesheets and business logic defined in JavaScript, as outlined in an earlier blog entry on this topic.  OK, now ZIP up that folder, send it to whoever is working on other Cloud applications that need to make use of the "customer" element, which they can use as follows (in e.g., "library.js") after unzipping that ZIP into the relevant folder in their application: define(['ojs/ojcore', 'knockout', 'ojs/ojcomposite', 'jet-composites/customer/loader'], function (oj, ko) { function libraryContentViewModel() { var self = this; self.customers = [ {name: 'Billy Bob Thornton', city: 'New York'}, {name: 'Brad Pitt', city: 'Hollywood'}, {name: 'Val Kilmer', city: 'Seattle'} ]; } return new libraryContentViewModel(); }); All that the above does is load the "loader.js", include "ojs/ojcomposite" so that Oracle JET composite components are supported, and define a "customer" array. Here's the view (e.g., "library.html") of the above viewModel, using the "customer" HTML element provided by the composite component: That's pretty neat and, guess what, Oracle JET components conform to the Web Components specification, except for the Shadow DOM, which is not supported. [Less]
Posted 2 days ago
In the screencast below I created Java EE 7 projects with maven, developed and build them, created and build docker images, created a user defined network and finally launched the WARs on payara and wildfly and let them communicate: In the ... [More] first part of the JavaOne 2016 session in San Francisco I did the same. For unknown reasons docker was unbelievably slow during the presentation (I guess caused by network timeouts), so I re-recorded the first part. Now you can fast-forward over "boring" parts in the JavaOne presentation: Any questions left? The next is around the corner. Ask now: or wait a month. See you at Java EE Workshops at Munich Airport, Terminal 2 and particularly at Java EE 7 Microservices. Is MUC too far? Checkout: Real World Java EE Workshops [Airport Munich]> [Less]
Posted 5 days ago
Today at JavaOne we learned about making plugins in the NetBeans IDE. Making your own plugin is a good idea because if your technology is available in the IDE, people are more likely to start using it. Some general words of advice: Before diving ... [More] straight in, create levels of requirements for your plugin. For example design a prototype, then decide on the minimal, medium and full requirements you would like to include Look at similar existing plugins and try and make yours as similar to those as possible. For example if you are creating a database plugin, look at how other database plugins work Making a simple plugin is relatively straightforward. A tutorial is available here. When you are done, right clicking on your new module will give you the option to Install/Reload. Now the software you have just been writing will be available to use in the very IDE you have just been using to create it. When you are happy with your plugin you can go to NetBeans Plugin Portal and upload it. A community of verifiers will make sure the core functionality works and that it doesn’t break NetBeans. After that your plugin will be available in the plugin manager in NetBeans for anyone to use (just go to Tools > Plugins and search in available plugins). Another tip: Once people are using it, be prepared for the fact that you will now need to ensure it keeps working and be prepared to respond to feedback. The best way is to try it – have a go at creating your own plugin in NetBeans. If you’re a first-time reader, or simply want to be notified when we post new articles and updates, you can keep up to date by social media (Twitter, Facebook and Google+) or the  Blog RSS.   Related Posts: NetBeans Day 2016 – First 2 sessions 4 Events IDRsolutions plan to attend in 2016 5 Steps to Changing from Mercurial to Git in the NetBeans IDE My key takeaways from NetBeans Day 2015 JavaOne keynote 2015 The post Creating plugins in the NetBeans IDE appeared first on Java PDF Blog and was written by Bethan Palmer. [Less]
Posted 5 days ago
On the way to NetBeans Day 2016, I had a nice conversation... Here's where it is on YouTube:
Posted 6 days ago
To a packed room at NetBeans Day 2016, at the start of JavaOne 2016, James Gosling participated in a discussion panel, where he reflected on the history of NetBeans and shared his thoughts on the plans to move to Apache. Below, watch the final ... [More] minutes, where he focuses specifically on the NetBeans plans in relation to Apache: <span id="XinhaEditingPostion"></span> Here's the view on the room from his perspective, in a photo taken by Michael Nacimento (sitting next to James): Thanks to Victor Duran, who made the video of James's words above.  There was a funny moment earlier in the session, where I had explained the move of NetBeans towards Apache, which I ended by saying: "We are carefully optimistic that everything will work out and our move to Apache will succeed." At that point James threw up his hands in exasperation, turned to me, and said: "Oh, have a little faith! We'll work through the Apache process!" :-) [Less]
Posted 7 days ago
JavaOne always starts with a big Community event and NetBeans day this year had an extra buzz with the big news about the license changes and impending NetBeans 8.2 release. Here are first 2 sessions and pictures from NetBeans Day 2016…. Picture ... [More] Gallery from NetBeans Day 2016     9.15 What’s Going On in the NetBeans Ecosystem?  Geertjan Wielenga gave a summary of the last year. There are lots of new features in NetBeans (especially in JavaScript support) and how NetBeans was being used by multiple companies and the number of new features which will appear soon (including R and better Groovy support). He showed the cool new editing features (only 50 individual curators possible) and easy use with Oracle’s free Jet JavaScript library. The Dark theme for NetBeans is currently the most popular plugin to download. He explained how Oracle would continue to put resources into NetBeans development, while the new Apache licensing model makes it much easier for others to make use of NetBeans and contribute code. Lastly there was a 30 second youtube video of Geertjan talking code and NetBeans with his taxi driver (this is San Francisco). Mark Stephens talked about the NetCat test program, the latest NetBeans tee-shirts (which were thrown into the audience in James Gosling’s talk) and the NetBeans day. He ran through what happened at the NetBeans Day UK at Greenwich and how the NetBeans days are evolving. Zoran Several gave a quick sneak preview of his work on image recognition. All of this this built on top of the NetBeans platform. 10.30 James Gosling and the Newest, Latest, and Cutting-Edgiest Technologies in the NetBeans IDE Geertjan Wielenga gave a quick summary of his 9.15 news and updates. Arun Gupta showed how easy it was to use docker in NetBeans and how you can avoid the command line totally. He also showed the CouchBase plugin which he has written with Geertjan. There is a whole series of articles on how this was built so you can build your own plugin. His favourite Netbeans feature is the out of the box experience. It all just works. Michael Nascimento did a jackpot demo using the find and transform to refactor some code using Joda time to new java time. He showed how it integrated into NetBeans so you can review all the changes and easily refactor huge amounts of code. James Gosling did a history recap. Visual studio killed off most tools. Sun bought Forte (anyone remember that?) and NetBeans. Sun made NetBeans free and open source. He is really excited about Apache and signed up. His key advice was ‘Buy anyone you know in Apache a beer so they vote in favour of NetBeans project‘. Tee-shirts were thrown into the audience! Toni Apple did a demo using Dukescript – Java and HTML. Inspired by @internetofshit, he found that his toothbrush had an API and added a GUI (complete with minions). Sean Phillips showed 3 demos on how NetBeans has gone beyond the cloud and into space. It is being actively used in NASA for space projects and a big attraction of NetBeans is that they can write fast display and processing applications beyond what they could create in HTML5/JavaScript. Full details of the other sessions are available here. Still plenty to see later today… Related Posts: Creating plugins in the NetBeans IDE 4 Events IDRsolutions plan to attend in 2016 My key takeaways from NetBeans Day 2015 JavaOne keynote 2015 NetBeans Day at JavaOne 2015 The post NetBeans Day 2016 – First 2 sessions appeared first on Java PDF Blog and was written by Mark Stephens. [Less]
Posted 7 days ago
I worked with JB Brock yesterday on setting up and using Oracle JET's new Composite Component Architecture. The aim of it all is to have reusable components that enable you to define your own HTML elements, like this, for example: Above ... [More] you see a Knockout for-each loop which iterates through 'employees' and creates a new DOM element named "demo-card" for each of them. The above is in the view, e.g., in "home.html", while "home.js", i.e., the viewModel, defines "employees" as follows: self.employees = [ { name: 'Deb Raphaely', avatar: 'images/composites/debraphaely.png', title: 'Purchasing Director', work: '5171278899', email: '', backgroundImage: 'images/composites/card-background_1.png' }, { name: 'Adam Fripp', avatar: null, title: 'IT Manager', work: '6501232234', email: '', backgroundImage: null } ]; In this case, the definition of "demo-card" transforms the above snippets into a view that looks like this, with a "demo-card" for each of the two employees defined above: When the user clicks on each "demo-card", it flips around, and you see the other side of the card, which presents more information about the employee. (See the above live here.) OK, so where does "demo-card" come from? Well, in "home.js", i.e., the same place where the 'employees' above are defined, my "define" block looks like this: define(['ojs/ojcore', 'knockout', 'ojs/ojcomposite', 'jet-composites/demo-card/loader'], Notice, first of all, that "ojs/ojcomposite" is included, which is new in Oracle JET 2.1.0. It defines composite components. Then, notice that something is loaded from a folder named 'jet-composites', which is a folder that looks like this: Notice "demo-card" is a folder in there, which looks like this: So, what you have is an infrastructure for creating encapsulated components, defined by JavaScript, HTML, and CSS, with properties defined in JSON. Once you have a composite component, you have created a new HTML element, in this case "demo-card", defined by "loader.js", which ties everything together: define(['ojs/ojcore', 'text!./demo-card.html', './demo-card', 'text!./demo-card.json', 'css!./demo-card', 'ojs/ojcomposite'], function(oj, view, viewModel, metadata) { oj.Composite.register('demo-card', { view: {inline: view}, viewModel: {inline: viewModel}, metadata: {inline: JSON.parse(metadata)} }); } ); You can pass the composite component in a ZIP file to whoever needs to use it, who unzips the ZIP into a folder, and loads it into their viewModel as described earlier, via the "define" block of the viewModel. You can see composite components as plugins for developers, i.e., not for the end user of the app, but for the development team, enabling features to be packaged, shared, and reused. Here is a more complex example, which is a composite component called "demo-memory-game" which itself makes use of a composite component called "demo-memory-card": All the details, including all the code described above, are here in the Oracle JET Cookbook: Note: When loading a composite component that includes a CSS file, remember to add 'css': 'libs/require-css/css' in your main.js file, i.e., in the "paths" section of your "requirejs.config", otherwise the composite component loader crashes when trying to execute the loading of the CSS, e.g., the 'css!./demo-card' piece. Thanks Janis Krasemann on Twitter for pointing this out. That is something I indeed did do but forgot to mention here. :-) [Less]
Posted 7 days ago
Do you use a Nightly-/Dev-Build of NetBeans or even a release candidate of 8.2 within the NetCAT-program and you are missing some of your favorite plugins? First there is no plugin center for Dev-Builds. Also most plugins from the 8.1 plugin center ... [More] are not verified for the new 8.2 build yet – including my plugins. Nevertheless in the meantime you can still use the plugins and give the plugin authors feedback of the compatiblity to 8.2. Some plugins won’t work, because of using non-public API, but that is the point to find out! How to do that? At Tools|Plugins|Settings add the plugin center URL for 8.1 [1] and then at Tools|Plugins|Available Plugins click at “Check for Newest” Additional If you are interested in testing non-verified plugins see the article [2] [1] [2] [Less]
Posted 8 days ago
This year I was more cautious and only proposed a single session: Live-Coding No-Ceremony Microservices [CON3436] Java EE is productive and easy to learn and runs smoothly on containers such as Docker and rkt. It has become the perfect ... [More] microservices platform. Unfortunately, no one in the enterprise is interested in managing thousands of nanoservices “just for fun.” In this session, the presenter hacks on stage a couple of Java EE 7/8 “rightsized” services, links them together, runs them on Docker, and explains the architectural decisions and best practices in real time. Tuesday, Sep 20, 2:30 p.m. - 3:30 p.m. | Parc 55 - Embarcadero Is San Francisco too far? See you at Java EE Workshops at Munich Airport, Terminal 2 and particularly at Java EE 7 Microservices. Real World Java EE Workshops [Airport Munich]> [Less]