diff --git a/protocols/isis/ctl/src/main/java/org/onosproject/isis/controller/impl/Controller.java b/protocols/isis/ctl/src/main/java/org/onosproject/isis/controller/impl/Controller.java
index e8dc9f0..8e1006e 100644
--- a/protocols/isis/ctl/src/main/java/org/onosproject/isis/controller/impl/Controller.java
+++ b/protocols/isis/ctl/src/main/java/org/onosproject/isis/controller/impl/Controller.java
@@ -94,9 +94,8 @@
      * Updates the processes configuration.
      *
      * @param jsonNode json node instance
-     * @throws Exception might throws parse exception
      */
-    public void updateConfig(JsonNode jsonNode) throws Exception {
+    public void updateConfig(JsonNode jsonNode) {
         log.debug("Controller::UpdateConfig called");
         configPacket = new byte[IsisConstants.CONFIG_LENGTH];
         byte numberOfInterface = 0; // number of interfaces to configure
diff --git a/protocols/isis/ctl/src/main/java/org/onosproject/isis/controller/impl/IsisChannelHandler.java b/protocols/isis/ctl/src/main/java/org/onosproject/isis/controller/impl/IsisChannelHandler.java
index da0c946..937935b 100644
--- a/protocols/isis/ctl/src/main/java/org/onosproject/isis/controller/impl/IsisChannelHandler.java
+++ b/protocols/isis/ctl/src/main/java/org/onosproject/isis/controller/impl/IsisChannelHandler.java
@@ -236,9 +236,8 @@
      *
      * @param isisMessage received ISIS message
      * @param ctx         channel handler context instance.
-     * @throws Exception might throws exception
      */
-    public void processIsisMessage(IsisMessage isisMessage, ChannelHandlerContext ctx) throws Exception {
+    public void processIsisMessage(IsisMessage isisMessage, ChannelHandlerContext ctx) {
         log.debug("IsisChannelHandler::processIsisMessage...!!!");
         int interfaceIndex = isisMessage.interfaceIndex();
         IsisInterface isisInterface = isisInterfaceMap.get(interfaceIndex);
diff --git a/protocols/isis/isisio/src/main/java/org/onosproject/isis/io/isispacket/IsisMessageReader.java b/protocols/isis/isisio/src/main/java/org/onosproject/isis/io/isispacket/IsisMessageReader.java
index 09cac03..883a892 100644
--- a/protocols/isis/isisio/src/main/java/org/onosproject/isis/io/isispacket/IsisMessageReader.java
+++ b/protocols/isis/isisio/src/main/java/org/onosproject/isis/io/isispacket/IsisMessageReader.java
@@ -40,9 +40,9 @@
      *
      * @param channelBuffer buffer
      * @return ISIS message
-     * @throws Exception exception
+     * @throws IsisParseException exception
      */
-    public IsisMessage readFromBuffer(ChannelBuffer channelBuffer) throws Exception {
+    public IsisMessage readFromBuffer(ChannelBuffer channelBuffer) throws IsisParseException {
 
         int dataLength = channelBuffer.readableBytes();
         log.debug("IsisMessageReader::readFromBuffer Data length {}", dataLength);
@@ -103,7 +103,6 @@
      *
      * @param channelBuffer ISIS header
      * @return ISIS header
-     * @throws Exception
      */
     private IsisHeader getIsisHeader(ChannelBuffer channelBuffer) {
 
