diff --git a/src/main/java/net/floodlightcontroller/firewall/FirewallRuleSerializer.java b/src/main/java/net/floodlightcontroller/firewall/FirewallRuleSerializer.java
index 98b566a081fe9ba7b1518b4bec74e605bb7715ad..a9821d97eeaa5d0be4250a8e26f9cc9a2312e436 100644
--- a/src/main/java/net/floodlightcontroller/firewall/FirewallRuleSerializer.java
+++ b/src/main/java/net/floodlightcontroller/firewall/FirewallRuleSerializer.java
@@ -9,6 +9,7 @@ import org.codehaus.jackson.JsonGenerator;
 import org.codehaus.jackson.JsonProcessingException;
 import org.codehaus.jackson.map.JsonSerializer;
 import org.codehaus.jackson.map.SerializerProvider;
+import org.openflow.util.HexString;
 
 /**
  * Serialize a FirewallRule object
@@ -24,7 +25,7 @@ public class FirewallRuleSerializer extends JsonSerializer<FirewallRule> {
         jGen.writeStartObject();
         
         jGen.writeNumberField("ruleid", rule.ruleid);
-        jGen.writeNumberField("dpid", rule.dpid);
+        jGen.writeStringField("dpid", HexString.toHexString(rule.dpid));
         jGen.writeNumberField("in_port", rule.in_port);
         jGen.writeStringField("dl_src",String.valueOf(MACAddress.valueOf(rule.dl_src)));
         jGen.writeStringField("dl_dst", String.valueOf(MACAddress.valueOf(rule.dl_dst)));