diff --git a/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/api/CdiContainer.java b/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/api/CdiContainer.java
index 5fcd561..2d4e28e 100644
--- a/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/api/CdiContainer.java
+++ b/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/api/CdiContainer.java
@@ -61,6 +61,9 @@
     BeanManager getBeanManager();
 
     /**
+     * @param context standard servlet context
+     * @param session standard htpp session
+     *
      * @return ContextControl for the started Container. <code>null</code> if the container is not yet started
      */
     ContextControl getContextControl(ServletContext context, HttpSession session);
diff --git a/extscript-core-root/extscript-weld/src/main/java/org/apache/myfaces/extension/scripting/weld/api/ContextControl.java b/extscript-core-root/extscript-weld/src/main/java/org/apache/myfaces/extension/scripting/weld/api/ContextControl.java
index 5c387ee..62263b3 100644
--- a/extscript-core-root/extscript-weld/src/main/java/org/apache/myfaces/extension/scripting/weld/api/ContextControl.java
+++ b/extscript-core-root/extscript-weld/src/main/java/org/apache/myfaces/extension/scripting/weld/api/ContextControl.java
@@ -26,7 +26,7 @@
 /**
  * Control native CDI Container Contexts.
  * Just inject this interface and you gain manual access over built-in Contexts.
- * The respective integration code will provide a &064;Dependent scoped instance.
+ * The respective integration code will provide a Dependent scoped instance.
  */
 public interface ContextControl
 {
