Question: > 
> **Possible Duplicate:**  
> 
> [Interface vs Base class](https://stackoverflow.com/questions/56867/interface-vs-base-class) 
> 
> 
> 

A class implementing an `interface` has to implement all the methods of the interface, `but` if that class is implementing an `abstract class` is it necessary to implement all `abstract methods`?  

**If not**, can we create the `object` of that class which is implementing the `Abstract class`???

Answer: 
> 
> ... but I don't understand licensing issues.
> 
> 
> 

If you are going to build a commercial application on top of someone elses platform or libraries, you *need* to understand the licensing issues, *irrespective* of whether the libraries are open source or closed source. There are no short cuts here. **You** need to do the research, understand the licenses and make your decisions based on that understanding.
If you're providing a commercial application, presumably you'll also want to make sure you can support these tools - so will you be using the free version of jasper/pentaho or the commercial version?

Dont both companies have partner programmes? Perhaps thats worth looking in to. It sounds to me like you'll definately need some level of support from the owning company.. Maybe the question is, what happens if you embed the software under a partner agreement, then discontinue that agreement in the future?