jakub holý

building the right thing, building it right, fast

Holy on Dev

All posts

  1. It will only take one hour... (On why programmers suck at estimating and the perils of software development)

  2. How to use Clojure 1.10 pREPL to connect to a remote server (WIP)

  3. Migrating from Wordpress.com to a static site generated by GatsbyJS

  4. Solution design in Java/OOP vs. Clojure/FP - I/O anywhere or at the boundaries? - experience

  5. Clojure vs Java: Troubleshooting an application in production

  6. Clojure vs Java: The benefit of Few Data Structures, Many Functions over Many Unique Classes

  7. AWS RDS: How to find out login credentials to the database

  8. Java: Simulating various connection problems with Toxiproxy

  9. How I got fired and learned the importance of communication and play time

  10. Clojure - comparison of gnuplot, Incanter, oz/vega-lite for plotting usage data

  11. How good monitoring saved our ass ... again

  12. Beware the performance cost of async_hooks (Node 8)

  13. Monitoring process memory/CPU usage with top and plotting it with gnuplot

  14. Troubleshooting javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure

  15. Why we love AWS Beanstalk but are leaving it anyway

  16. Pains with Terraform (perhaps use Sceptre next time?)

  17. How to patch Travis CI''s deployment tool for your needs

  18. Experience: Awesome productivity with ClojureScript''s REPL

  19. Simulating network timeouts with toxiproxy

  20. Demonstration: Applying the Parallel Change technique to change code in small, safe steps

  21. It Is OK to Require Your Team-mates to Have Particular Domain/Technical Knowledge

  22. Don''t add unnecessary checks to your code, pretty please!

  23. 2015 in review

  24. Why we practice fronted-first design (instead of API-first)

  25. A Costly Failure to Design for Performance and Robustness

  26. Troubleshooting And Improving HTTPS/TLS Connection Performance

  27. Moving Too Fast For UX? Genuine Needs, Wrong Solutions

  28. Upgrade or not to upgrade dependencies? The eternal dilemma

  29. Storytelling as a Vehicle of Change: Introducing ClojureScript for the Heart and Mind

  30. Refactoring & Type Errors in Clojure: Experience and Prevention

  31. An answer to CircleCI''s "Why we’re no longer using Core.typed"

  32. Nginx: Protecting upstream from overload on cache miss

  33. Shipping a Refactoring & Feature One Tiny Slice at a Time, to Reduce Risk

  34. Running Gor, the HTTP traffic replayer, as a service on AWS Elastic Beanstalk

  35. AWS ebextensions: Avoiding "Could not enable service" (or .. disable ..)

  36. Fixing a mysterious .ebextensions command time out (AWS Elastic Beanstalk)

  37. AWS: Passing private configuration to a Docker container (via S3)

  38. Book Review & Digest: Release It! Design and Deploy Production-Ready Software

  39. NDC Oslo 2015: Talk notes, recommended talks (security, FP, etc.)

  40. Why do companies fail at adopting Functional Programming?

  41. Notes from Troy Hunt''s Hack Yourself First workshop

  42. NDC: Async and Streaming JavaScript, We''re All Doing it Wrong! (Promises, Streams, Rx)

  43. Example: Functional Reactive Programming decisively beats Imperative on simplicity, length

  44. AWS API: Proper syntax for filtering by tag name and value (e.g. describeInstances)

  45. Mounting an EBS volume to Docker on AWS Elastic Beanstal

  46. OS X: Using scutils to discover whether/what a web proxy is in use

  47. All-in-one Docker with Grafana, InfluxDB, and cloudwatch-to-graphite for AWS/Beanstalk monitoring

  48. Hack: Quickly Verify That All Your Mocha/Chai Tests Have Valid Assertions

  49. My Highlights from Continuous Delivery and DevOps Conference 2015

  50. iTerm coprocess reporting result of (Mocha) tests run via nodemon

  51. Backup WD MyCloud to S3/Glacier with duplicity (build instructions included)

  52. AWS CloudWatch Alarms Too Noisy Due To Ignoring Missing Data in Averages

  53. Git pre-commit hook that fails if "it.only" used (Jest/Jasmine)

  54. There will be failures – On systems that live through difficulties instead of turning them into a catastrophy

  55. A Usable Node.js REPL for Emacs

  56. The Are No Silver Bullets: Which Error Handling Style to Pick For a Given Configuration of Constraints?

  57. Fix Shell Script Run via SSH Hanging (Jenkins)

  58. Challenging Myself With Coplien''s Why Most Unit Testing is Waste

  59. Running JavaScript Tests On a CI Server With Karma, Chrome And Fake X

  60. Focus & Do the Simplest Thing Possible

  61. Notes On Automated Acceptance Testing (from the Continuous Delivery book)

  62. Continuous Delivery Digest: Ch.9 Testing Non-Functional Requirements

  63. The blog''s year 2014 in review

  64. Connect Tunnelblick to VPN automatically after wake up

  65. Book Review & Digest: Capital In The Twenty-First Century

  66. Tiny, Tiny Steps - Experience Report Developing A Feature In Minimal Value-Adding Increments

  67. Notes From CodeMesh 2014

  68. Most interesting links of July ''14

  69. Most interesting links of June ''14

  70. Review: Clojure for Machine Learning (Ch 1-3)

  71. Most interesting links of May ''14

  72. Fixing clojurescript.test failing with "ReferenceError: Can''t find variable: cemerick"

  73. Clojure/Java: Prevent Exceptions With "trace missing"

  74. ClojureScript/Om: Spurious "Minified exception occured" With Advanced Optimizations

  75. core.async: "Can''t recur here" in ClojureScript but OK in Clojure

  76. Graphite Shows Metrics But No Data - Troubleshooting

  77. Most interesting links of April ''14

  78. Clojure: How To Prevent "Expected Map, Got Vector" And Similar Errors

  79. How to create and run Gatling 2.0 tests

  80. Kioo: How to Troubleshoot Template Processing

  81. Kioo: How To Replace The Whole Body

  82. Most interesting links of March ''14

  83. Framework Joy: Load in Hibernate Updates Data

  84. How To Generate A Valid Credit Card Number For A Bin (First 6 Digits)

  85. HttpServletRequest: requestURI/requestURL/contextPath/servletPath/pathInfo/queryString

  86. Ansible: Best practices for deriving host-level var from a group var

  87. Frustration-Driven Development - Towards DevOps, Lean, Clojure

  88. Recursive Copy In Ansible 1.5 And --diff

  89. Petitioning EU to act against Russian aggression in Ukraine

  90. Ansible Troubleshooting Tips

  91. Most interesting links of February ''14

  92. JavaServer Faces Are Evil (draft)

  93. Handling Deployments When Provisioning JBoss domain.xml (With Ansible)

  94. Seek Understanding

  95. The Risks Of Big-Bang Deployments And Techniques For Step-wise Deployment

  96. Demonstration of Ansible Features With Control & Test VMs

  97. JBoss Modules Suck, It''s Impossible To Use Custom Resteasy/JAX-RS Under JBoss 7

  98. A Secret Weapon Against Technical Debt

  99. Most interesting links of January ''14

  100. Most interesting links of December ''13

  101. Bad Code: Are We Thinking Too Little?

  102. 2013 in review

  103. Code Is Cheap, It''s Knowledge Discovery That Costs

  104. Most interesting links of November ''13

  105. How I Learned to Avoid Magical Dependency Injection And Love Plain Java

  106. Most interesting links of October ''13

  107. The Failure of Governmental IT (Learnings From HealthCare.gov)

  108. My Highlights From EuroClojure 2013

  109. Fixed: Embedded Jetty Fails To Unpack With FileNotFoundException: Not a directory

  110. Most interesting links of September ''13

  111. Webapp Blue-Green Deployment Without Breaking Sessions/With Fallback With HAProxy

  112. Test Puppet config of an existing node using Puppet Master via Vagrant

  113. Most interesting links of August ''13

  114. Clojure REPL stores the latest results in *1, *2, *3, exception in *e

  115. Most interesting links of July ''13

  116. Running A Leiningen/Ring Webapp As A Daemon Via Upstart (Ubuntu)

  117. Installing & Troubleshooting Google Analytics 2013 (ga / analytics.js)

  118. Creating A Chart With A Logarithmic Axis In Incanter 1.5.1

  119. The Invisible Benefits Of Pair-Programming: Avoiding Wasteful Coding Excursions

  120. Most interesting links of June ''13

  121. Brief Intro Into Random/Stochastic/Probabilistic/Simulation/Property-Based Testing

  122. Patterns of Effective Delivery - Challenge Your Understanding Of Agile (RootsConf 2011)

  123. Installing Latest Node.JS And NPM Modules With Puppet

  124. Making Sense Out of Datomic, The Revolutionary Non-NoSQL Database

  125. Ignore requirements to gain flexibility, value, insights! The power of why

  126. Most interesting links of May ''13

  127. Tip: Include Context And Propose Solutions In Your Error Messages

  128. Accessing An Artifact''s Maven And SCM Versions At Runtime

  129. Lesson Learned: Don''t Use Low-Level Lib To Test High-Level Code

  130. Becoming A Better Programmer Through The Study of Good And Bad Code & Design

  131. Most interesting links of April ''13

  132. Book Review & Digest: Boyd: The Fighter Pilot Who Changed the Art of War (Relevant for IT/Business)

  133. The Value and Perils of Performance Benchmarks in the Wake of TechEmpower''s Web Framework Benchmark

  134. Most interesting links of Mars ''13

  135. Tools for Editor - Browser Integration for Interactive JS/HTML Development

  136. Markdown + JavaScript = Great HTML Presentation Decks

  137. Escaping the Zabbix UI pain: How to create a combined graph for a number of hosts using the Zabbix API

  138. You are not lean unless you have a clear objective and measure

  139. From Stateful Iteration in Python to Stateless Clojure

  140. Books Our Developers Should Read

  141. Most interesting links of February ''13

  142. JDBC: What resources you have to close and when?

  143. Most interesting links of January ''13

  144. The Sprinting Centipede Strategy: How to Improve Software Without Breaking It

  145. Bash: Parse Options And Non-Options With Getopts

  146. Bash Magic: List Hive Table Sizes in GB

  147. Fast Code To Production Cycle Matters: For Pleasure, Productivity, Profit

  148. My 2012 in Review

  149. Blogging Stats of 2012

  150. Most interesting links of December ''12

  151. What Is Clean Code? - In Quotes

  152. Most interesting links of November ''12

  153. Most interesting links of October ''12

  154. Tip: Import Leiningen Project to IntelliJ (With Dependencies)

  155. Do You Know Why You Are Testing?! (On The Principles Underlying TDD)

  156. Tool Tip: Byob - Screen With Text UI

  157. Puppet Troubleshooting: Compiling Catalog, Locating a Cached Catalog

  158. My Scala vs. Clojure Impression In Pictures

  159. Note: Loading Tab-Separated Data In Cascalog

  160. Most interesting links of September ''12

  161. Using Java as Native Linux Apps - Calling C, Daemonization, Packaging, CLI (Brian McCallister)

  162. Infographic: Why Should All Learn Little Code

  163. VisualVM: Monitoring Remote JVM Over SSH (JMX Or Not)

  164. Enabling JMX Monitoring for Hadoop And Hive

  165. The Best Code I Have Ever Written Is The Code I Never Wrote

  166. Programming Like Kent Beck

  167. (Unit) Testing Swiss Knife: All the Tools You Wanted to Know

  168. Help, My Code Isn''t Testable! Do I Need to Fix the Design?

  169. Most interesting links of August ''12

  170. Tip: How to Easily Customize PMD Rules in Eclipse

  171. Recommended Book: Real World Java EE Night Hacks by Adam Bien

  172. Minimalistic Practical Introduction to Puppet (Not Only) For Vagrant Users

  173. You''re Writing the Wrong Software - You Never Know What Users Want Until You Ask Them

  174. Zabbix: Fixing Active Checks to Work With Zabbix Proxy

  175. How to Add MapRed-Only Node to Hadoop

  176. Most interesting links of July ''12

  177. Book Review: Implementation Patterns

  178. Notify on Errors in a Log File with Zabbix 1.8

  179. Testing Zabbix Trigger Expressions

  180. Most interesting links of June ''12

  181. How to Set JVM Memory for Clojure REPL in Emacs (clojure-jack-in, clojure-swank)

  182. Creating Custom Login Modules In JBoss AS 7 (and Earlier)

  183. Serving Files with Puppet Standalone in Vagrant From the puppet:// URIs

  184. Most interesting links of May ''12

  185. Bad Code: Too Many Object Conversions Between Application Layers And How to Avoid Them

  186. Beautiful Code: Simplicity Yields Power

  187. Creating On-Demand Clusters in EC2 with Puppet

  188. Most interesting links of April ''12

  189. Exposing Functionality Over HTTP with Groovy and Ultra-Lightweight HTTP Servers

  190. Groovy Grape: Troubleshooting Failed Download

  191. Most interesting links of Mars ''12

  192. Note To Self: What to Do When a Vagrant Machine Stops Working (Destroy or Up Failing)

  193. Kent Beck: Best Practices for Software Design with Low Feature Latency and High Throughput

  194. Link: Benchmark and Scaling of Amazon RDS (MySQL)

  195. Most interesting links of February ''12

  196. Profiling Tomcat Webapp with VisualVM and NetBeans - Pitfalls

  197. Cool Tools: Fault Injection into Unit Tests with JBoss Byteman - Easier Testing of Error Handling

  198. Release 0.9.9 of Static JSF EL Expression Validator with Annotated Beans Autodetection

  199. Using Java Compiler Tree API to Extract Generics Types

  200. Separating Integration and Unit Tests with Maven, Sonar, Failsafe, and JaCoCo

  201. Troubleshooting Jersey REST Server and Client

  202. Most interesting links of January ''12

  203. How to Create Maintainable Acceptance Tests

  204. Visualize Maven Project Dependencies with dependency:tree and Dot Diagram Output

  205. uCertify

  206. Key Lessons from the Specification by Example Course, Day 1

  207. Annual Blogging Report 2011

  208. Most interesting links of December

  209. AWK: Extract Logs for the Given Date(s) from a Log File

  210. Quiz: What''s the Best Test Method Name?

  211. Getting Started with Amazon Web Services and Fully Automated Resource Provisioning in 15 Minutes

  212. Most interesting links of November

  213. The 3 Most Important Things I''ve Learned This Year

  214. Where to Get Sample Java Webapps

  215. What Changes When You Deploy More Frequently and Why You Should Do It

  216. Refactoring Spikes as a Learning Tool and How a Scheduled Git Reset Can Help

  217. Principles for Creating Maintainable and Evolvable Tests

  218. How to Fail With Drools or Any Other Tool/Framework/Library

  219. Tips And Resources For Creating DSLs in Groovy

  220. What Is CDI, How Does It Relate to @EJB And Spring?

  221. Book Review: Agile Project Management With Scrum

  222. Groovy: Use @Canonical to Get Compiler-generated Equals, HashCode and ToString

  223. Groovy: Creating an Interface Stub and Intercepting All Calls to It

  224. Most interesting links of October

  225. JSF: Beware the Difference Between Build-Time and Render-Time Tags in Facelets

  226. Never Mix Public and Private Unit Tests! (Decoupling Tests from Implementation Details)

  227. Hacking A Maven Dependency with Javassist to Fix It

  228. Only a Masochist Would Write Unit Tests in Java. Be Smarter, Use Groovy (or Scala...).

  229. Comparison of Eclipse 3.6 and IntelliJ IDEA 10.5: Pros and Cons

  230. Intro: Java Webapp Monitoring with Hyperic HQ + How to Alert on Too Many Errors in Logs

  231. hasProperty, the Hidden Gem of Hamcrest (and assertThat)

  232. Aggregating Error Logs to Send a Warning Email When Too Many of Them - Log4j, Stat4j, SMTPAppender

  233. Spring: Make an Externally Created Object Available to Beans in applicationContext.xml

  234. Tools for Renaming the Package of a Dependency with Maven

  235. Note to Self: Running GroovyConsole with a Maven Project''s Classpath

  236. Most interesting links of September

  237. Inspect Your Webapp in a Live Environment Interactively with GroovyConsole

  238. Link: Advanced Usage of JUnit Theories, Multiple DataPoints, and ParameterSuppliers

  239. JUnit Tip: Verifying that an Exception with a Particular Message was Thrown

  240. Practical Introduction into Code Injection with AspectJ, Javassist, and Java Proxy

  241. DRY: Use JUnit @Rule Instead of Repeating Setup/@Before in Each Test

  242. DbUnit Express 1.3 is Even Easier to Use and Still Better

  243. Most interesting links of August

  244. DbUnit Express Tips: Setup Simplification, Custom Data File Convention

  245. A Funny Story about the Pain of Monthly Deployments

  246. Most interesting links of July

  247. Experiencing JSF 1.2: Good but Needs a Framework

  248. Simple Logging HTTP Proxy with Grinder

  249. Having Database Test Ready in 10 Minutes with DbUnit Express

  250. Ivy: Retrieve Both .jar And -sources.jar Into A Folder - Note to Self

  251. Going to Present "Programmer''s Survival Kit: Code Injection for Troubleshooting" at JavaZone 2011

  252. Most interesting links of June

  253. Validating JSF EL Expressions in JSF Pages with static-jsfexpression-validator

  254. How to Fix Empty "Show all bookmarks" in Firefox 4

  255. Hacking Jasper to Get Object Model of a JSP Page

  256. Version hell with JSFUnit, Arquillian, and (embedded) Glassfish and other containers

  257. Most interesting links of May

  258. Ivy: How to Retrieve Source Codes of Dependencies

  259. Installing Java 1.4 to Mac OS X 10.6

  260. Upgrading FCKeditor 2.x to CKEditor 3.x including plugins

  261. Discussion: Agile not suitable for governmental IT?

  262. Most interesting links of April (renewed)

  263. How stateless can you go?

  264. What I''ve Learned from (Nearly) Failing to Refactor Hudson

  265. What Do I Mean by a Legacy Code?

  266. Refactoring the "Legacy" Hudson.java with the Mikado Method as a Coding Dojo

  267. Real-world data prove that Agile, BDD & co. work - lecture by G. Adzic

  268. How to customize CKEditor with your own plugins, skins, configurations

  269. CKEditor: Hide some toolbar buttons on a per page basis

  270. Code quality matters to the customers. A lot.

  271. CKEditor: Collapsing only 2nd+ toolbar rows - howto

  272. Most interesting links of March

  273. CKEditor: Scroll dialogs with the page, i.e. not fixed to the middle

  274. Introduction to ObjectTeams/Java, a Role-Based Approach to Modularity With AOP

  275. Why not to be afraid of 2012

  276. Most interesting links of February

  277. Hidden Dependencies Are Evil - Arguing With The Clean Code (Slightly)

  278. Clean Code: Four Simple Design Rules - Obligatory Read

  279. Manually restoring raw partclone partition image to a VMWare

  280. Most interesting links of January

  281. Goodby IBA, welcome, Norway and Iterate!

  282. Using Ivy with pom.xml

  283. EMF tips: Accessing model meta data, serializing into element/attribute

  284. EMF: Reading a model from XML - how to correctly declare its namespace - variants

  285. Creating dynamic EMF model from XSDs and loading its instances from XML as SDOs

  286. 2010 in review

  287. Most interesting links of December

  288. Tip: Multiple webservice implementation classes available at the same time under WAS7

  289. Howto: JAX-WS service with XML Source input instead of JAXB-produced POJOs (similar to JAX-RPC with SOAPElement input)

  290. Creating JAX-WS webservice using Service Data Objects (SDO) instead of JAXB-bound POJOs

  291. Ivy resolve downloads but ignores some artifacts (though not modules)

  292. Joshua Bloch: Performance Anxiety - on Performance Unpredictability, Its Measurement and Benchmarking

  293. Most interesting links of November

  294. Book review: Refactoring by Martin Fowler

  295. svn fun: <path> has no ancestry information

  296. More Eclipse & svn fun: Can''t share a project (only Team - Apply Patch)

  297. SOAP/SAAJ/XML Issues When Migrating to Java 6 (with Axis 1.2)

  298. If You Don''t Use Pair Programming and Code Reviews as Teaching Tools You Waste Money

  299. Knowing I''m Bad Programmer Makes Me Good Programmer

  300. Tip: Enable a shortcut for Occurrences in File in Eclipse under Gnome (default C+S+u)

  301. Most interesting links of October

  302. Tip: Retrieving server certificate used in SSL communication (e.g. POP3s)

  303. Most interesting links of September

  304. The power of batching or speeding JDBC by 100

  305. Exposing a POJO as a JMX MBean easily with Spring

  306. Implementing retrial with a MDB or an MQ batch job? (WAS 7, MQ 6)

  307. SSH magic: Authorize only once for multiple ssh/scp invocations

  308. Jetty-maven-plugin: Running a webapp with a DataSource and security

  309. Most interesting links of August

  310. An encrypted backup of a disk/partition to a Samba share with Clonezilla

  311. Most interesting links of July

  312. Mobile learning application MiniPauker 1.1.05 released - please test!

  313. My path to SCEA 5

  314. Most interesting links of June

  315. Implementing build-time bytecode instrumentation with Javassist

  316. Booting from a USB stick in VMware Player

  317. Webservice testing with JMeter: Passing data from a response to another request

  318. Most interesting links of May

  319. Migrating from JRoller to Wordpress

  320. How Visual Paradigm (nearly) ruined my day and Dropbox (nearly) saved it

  321. Eclipse Profile configuration: The launch requires at least one data collector

  322. Book: Real World Java EE Patterns - Rethinking Best Practices (review & digest)

  323. Mocking out LDAP/JNDI in unit tests

  324. Most interesting links of April

  325. My older posts at JRoller

  326. File-based User Authentication under WebSphere 6

  327. Most interesting links of March

  328. Enforcing a common log format with AspectJ

  329. Broken Eclipse shortcut under Gnome for Occurrences in File

  330. Eclipse: Open Type/Resource working again under Linux!

  331. Released DbUnit Test Skeleton 1.1.0 - also in Maven Central

  332. The Art of Logging (review)

  333. Releasing a project to Maven Central repository via Sonatype

  334. Compiling with AspectJ''s ajc compiler from Maven

  335. Troubleshooting logging configuration (Log4j, commons-logging)

  336. Preview of the Portlets in Action book available

  337. PatternTesting: Automatically verifying the good application of architectural/design patterns in code

  338. Injecting timing aspect into JUnit test in Eclipse using AspectJ, AJDT

  339. See how Test Driven Development is done in practice

  340. The quest for a portal web framework is over and the winner is: Spring Portlet MVC

  341. Released DbUnit Test Skeleton 1.0.0 - setup DbUnit test w/ embedded DB in few minutes

  342. A new release 0.30 of MiniPauker, a J2ME flashcard learning application

  343. A logging wrapper around PreparedStatement to provide detailed info upon error

  344. Lotus Notes 8.x under Linux: No window shows up, Tips for upgrading to LN8.5

  345. Using ScribeFire to publish to JRoller.com

  346. How I managed to deploy a JSF/Seam portlet to JBoss after all

  347. Developing portlets for Liferay in Eclipse

  348. [DRAFT] Maven "change" project extending a non-maven web project

  349. Seam Tutorial 1.2: RichFaces and paged table (datascroller)

  350. The Forgotten Hells or God Save North Korea!

  351. When will we see JSR 286 in JSF portlets?

  352. Seam Tutorial 1.1: RichFaces and paged table (datascroller)

  353. JSF: NullPointerException at FacesServlet.init line 144 / Can''t parse faces-config.xml - SocketException

  354. Are portlets dead? JSR168 and JSR286 versus reality.

  355. Eclipse 3.4: New Update Manager and broken Extension Locations

  356. Webapp performance monitoring with Glassbox 2.0: How does it work?

  357. Injecting better logging into a binary .class using Javassist

  358. Add method tracing (params, result) to existing application w/o modifying it

  359. The Ultimate Web UI Framework

  360. Introducing Facelets

  361. Truncating UTF String to the given number of bytes while preserving its validity [for DB insert]

  362. VMWare: Shrink image even though it’s a snapshot

  363. Dependency Finder 1.2.0 for Java

  364. Troubleshooting Class/Resource Loading on an Application Server

  365. WAS 6.0 ant tasks: Install an app with an external Ant

  366. RAD, WAS 6 Test Env and J2EE security: getting rid of “No received or invocation credential exist on the thread”

  367. RAD: Profiling a portlet

  368. Kill a zombie database (not in the directory but can’t create it)

  369. RAD: Server Configurations in Rational Developer 6.0: copy, repair...

  370. DB2: Find out current locks, long transactions etc. [snapshot]

  371. Ant/Maven: Add build date/revision to the generated JAR''s Manifest

  372. Sending a SOAP request to a Web Service via URLConnection

  373. RAD, WebSphere and changing the classloader mode

  374. Eclipse: Run => NoClassDefFoundError for an interface when loading a class implementing it

  375. Redeploy an application (ear/war/…) on JBoss

  376. Access EJB on JBoss from outside