diff --git a/ChatService/src/java/org/ChatService/SendMessage.java b/ChatService/src/java/org/ChatService/SendMessage.java index 6c39db8ab2936e2aa8ee7bbe2a3733eb7d7e0da6..441ac62454900ed67e8ee8e3448f798e44b32a91 100644 --- a/ChatService/src/java/org/ChatService/SendMessage.java +++ b/ChatService/src/java/org/ChatService/SendMessage.java @@ -50,7 +50,7 @@ public class SendMessage extends HttpServlet { String username = request.getParameter("username"); String usernamereceiver = request.getParameter("usernamereceiver"); String message = request.getParameter("message"); - sql = "SELECT * FROM chattoken WHERE usernamereceiver=\""+usernamereceiver+"\";"; + sql = "SELECT * FROM chattoken WHERE username=\""+usernamereceiver+"\";"; ResultSet rs = stmt.executeQuery(sql); if(rs.next()){ JSONObject json = new JSONObject(); @@ -68,13 +68,14 @@ public class SendMessage extends HttpServlet { json1.put("to",usernamereceiver); json1.put("message",message); json.put("data",json1); - System.out.println(json.toString()); + System.out.println("Masuk sini "+json.toString()); String url = "https://fcm.googleapis.com/fcm/send"; URL obj = new URL(url); HttpURLConnection con = (HttpURLConnection) obj.openConnection(); con.setRequestMethod("POST"); + con.setDoOutput(true); con.setRequestProperty("Content-Type","application/json"); - con.setRequestProperty("Authorization","key:AIzaSyAQ2WIB6GWOxmtwMdGd8eHawL4PWxK8evU"); + con.setRequestProperty("Authorization","key=AIzaSyBkDljDoMLYg9F-HZOxVdsVryEScwF3DWE"); DataOutputStream wr = new DataOutputStream(con.getOutputStream()); String urlParameters = json.toString(); wr.writeBytes(urlParameters); @@ -82,31 +83,15 @@ public class SendMessage extends HttpServlet { wr.close(); con.setReadTimeout(15*1000); con.connect(); - /* OutputStreamWriter outputWriter = new OutputStreamWriter(con.getOutputStream()); - outputWriter.write(urlParameters); - outputWriter.flush(); */ - BufferedReader br = new BufferedReader(new InputStreamReader((con.getInputStream()))); StringBuilder sb = new StringBuilder(); String output; while ((output = br.readLine()) != null) { sb.append(output); } + PrintWriter out = response.getWriter(); + out.println(sb); } - - /* format - https://fcm.googleapis.com/fcm/send - Content-Type:application/json - Authorization:key=AIzaSyZ-1u...0GBYzPu7Udno5aA - - { "data": { - "score": "5x1", - "time": "15:10" - }, - "to" : "bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1..." - } - - */ } else{ try (PrintWriter out = response.getWriter()) { diff --git a/IdentService/build/web/WEB-INF/classes/org/IdentService/register.class b/IdentService/build/web/WEB-INF/classes/org/IdentService/register.class index 7a2a9b0ce89fc92347cd547e313812f040103aa9..89d6cedc71b6ff4513b6dd573382bf496a3ea9fa 100644 Binary files a/IdentService/build/web/WEB-INF/classes/org/IdentService/register.class and b/IdentService/build/web/WEB-INF/classes/org/IdentService/register.class differ diff --git a/IdentService/dist/IdentService.war b/IdentService/dist/IdentService.war index 6c77fc900fa8231d6cebbe1cb121b47fa9163203..25c4485aefa7fbce7fb4ada7340ceb87ae91dfe2 100644 Binary files a/IdentService/dist/IdentService.war and b/IdentService/dist/IdentService.war differ diff --git a/IdentService/nbproject/private/private.properties b/IdentService/nbproject/private/private.properties index 17b05e1fd355984e3470323a00669e8abef06ddb..28552d4ee798943351d4484319b203bb00c39ea6 100644 --- a/IdentService/nbproject/private/private.properties +++ b/IdentService/nbproject/private/private.properties @@ -1,7 +1,7 @@ -deploy.ant.properties.file=/home/khrs/.netbeans/8.2/config/GlassFishEE6/Properties/gfv3-2049786751.properties +deploy.ant.properties.file=C:\\Users\\Frys\\AppData\\Roaming\\NetBeans\\8.2\\config\\GlassFishEE6\\Properties\\gfv31137312071.properties j2ee.platform.is.jsr109=true -j2ee.server.domain=/home/khrs/glassfish-4.1.1/glassfish/domains/domain1 -j2ee.server.home=/home/khrs/glassfish-4.1.1/glassfish -j2ee.server.instance=[/home/khrs/glassfish-4.1.1/glassfish:/home/khrs/glassfish-4.1.1/glassfish/domains/domain1]deployer:gfv3ee6wc:localhost:4848 -j2ee.server.middleware=/home/khrs/glassfish-4.1.1 +j2ee.server.domain=C:/Users/Frys/GlassFish_Server/glassfish/domains/domain-client +j2ee.server.home=C:/Users/Frys/GlassFish_Server/glassfish +j2ee.server.instance=[C:\\Users\\Frys\\GlassFish_Server\\glassfish;C:\\Users\\Frys\\GlassFish_Server\\glassfish\\domains\\domain-client]deployer:gfv3ee6wc:localhost:4848 +j2ee.server.middleware=C:/Users/Frys/GlassFish_Server user.properties.file=/home/khrs/.netbeans/8.2/build.properties diff --git a/IdentService/nbproject/project.properties b/IdentService/nbproject/project.properties index 28548e29efd8a7fc5f43c22c14d86942eae450e3..a0430600ebb76a4a8491598571e99105f567a528 100644 --- a/IdentService/nbproject/project.properties +++ b/IdentService/nbproject/project.properties @@ -41,8 +41,8 @@ j2ee.platform=1.7-web ======= >>>>>>> bcf1435806005cb1ed3347eeb593de560332f805 j2ee.platform.classpath=${j2ee.server.home}/modules/endorsed/jaxb-api.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/endorsed/javax.annotation-api.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent-api.jar:${j2ee.server.home}/modules/javax.management.j2ee-api.jar:${j2ee.server.home}/modules/javax.enterprise.deploy-api.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/javax.interceptor-api.jar:${j2ee.server.home}/modules/javax.mail.jar:${j2ee.server.home}/modules/javax.xml.rpc-api.jar:${j2ee.server.home}/modules/javax.resource-api.jar:${j2ee.server.home}/modules/javax.ejb-api.jar:${j2ee.server.home}/modules/javax.websocket-api.jar:${j2ee.server.home}/modules/javax.transaction-api.jar:${j2ee.server.home}/modules/javax.json.jar:${j2ee.server.home}/modules/bean-validator.jar:${j2ee.server.home}/modules/javax.persistence.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jar:${j2ee.server.home}/modules/javax.ws.rs-api.jar:${j2ee.server.home}/modules/cdi-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl.jar:${j2ee.server.home}/modules/javax.el.jar:${j2ee.server.home}/modules/javax.inject.jar:${j2ee.server.home}/modules/weld-osgi-bundle.jar:${j2ee.server.home}/modules/javax.xml.registry-api.jar:${j2ee.server.home}/modules/javax.security.auth.message-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp-api.jar:${j2ee.server.home}/modules/javax.security.jacc-api.jar:${j2ee.server.home}/modules/javax.servlet-api.jar:${j2ee.server.home}/modules/javax.jms-api.jar:${j2ee.server.home}/modules/javax.batch-api.jar:${j2ee.server.home}/modules/javax.faces.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent.jar:${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.middleware}/mq/lib/jaxm-api.jar -j2ee.platform.classpath=${j2ee.server.home}/modules/endorsed/jaxb-api.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/endorsed/javax.annotation-api.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent-api.jar:${j2ee.server.home}/modules/javax.management.j2ee-api.jar:${j2ee.server.home}/modules/javax.enterprise.deploy-api.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/javax.interceptor-api.jar:${j2ee.server.home}/modules/javax.mail.jar:${j2ee.server.home}/modules/javax.xml.rpc-api.jar:${j2ee.server.home}/modules/javax.resource-api.jar:${j2ee.server.home}/modules/javax.ejb-api.jar:${j2ee.server.home}/modules/javax.websocket-api.jar:${j2ee.server.home}/modules/javax.transaction-api.jar:${j2ee.server.home}/modules/javax.json.jar:${j2ee.server.home}/modules/bean-validator.jar:${j2ee.server.home}/modules/javax.persistence.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jar:${j2ee.server.home}/modules/javax.ws.rs-api.jar:${j2ee.server.home}/modules/cdi-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl.jar:${j2ee.server.home}/modules/javax.el.jar:${j2ee.server.home}/modules/javax.inject.jar:${j2ee.server.home}/modules/weld-osgi-bundle.jar:${j2ee.server.home}/modules/javax.xml.registry-api.jar:${j2ee.server.home}/modules/javax.security.auth.message-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp-api.jar:${j2ee.server.home}/modules/javax.security.jacc-api.jar:${j2ee.server.home}/modules/javax.servlet-api.jar:${j2ee.server.home}/modules/javax.jms-api.jar:${j2ee.server.home}/modules/javax.batch-api.jar:${j2ee.server.home}/modules/javax.faces.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent.jar:${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.middleware}/mq/lib/jaxm-api.jar -j2ee.platform.classpath=${j2ee.server.home}/modules/endorsed/jaxb-api.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/endorsed/javax.annotation-api.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent-api.jar:${j2ee.server.home}/modules/javax.management.j2ee-api.jar:${j2ee.server.home}/modules/javax.enterprise.deploy-api.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/javax.interceptor-api.jar:${j2ee.server.home}/modules/javax.mail.jar:${j2ee.server.home}/modules/javax.xml.rpc-api.jar:${j2ee.server.home}/modules/javax.resource-api.jar:${j2ee.server.home}/modules/javax.ejb-api.jar:${j2ee.server.home}/modules/javax.websocket-api.jar:${j2ee.server.home}/modules/javax.transaction-api.jar:${j2ee.server.home}/modules/javax.json.jar:${j2ee.server.home}/modules/bean-validator.jar:${j2ee.server.home}/modules/javax.persistence.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jar:${j2ee.server.home}/modules/javax.ws.rs-api.jar:${j2ee.server.home}/modules/cdi-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl.jar:${j2ee.server.home}/modules/javax.el.jar:${j2ee.server.home}/modules/javax.inject.jar:${j2ee.server.home}/modules/weld-osgi-bundle.jar:${j2ee.server.home}/modules/javax.xml.registry-api.jar:${j2ee.server.home}/modules/javax.security.auth.message-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp-api.jar:${j2ee.server.home}/modules/javax.security.jacc-api.jar:${j2ee.server.home}/modules/javax.servlet-api.jar:${j2ee.server.home}/modules/javax.jms-api.jar:${j2ee.server.home}/modules/javax.batch-api.jar:${j2ee.server.home}/modules/javax.faces.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent.jar:${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.middleware}/mq/lib/jaxm-api.jar +j2ee.platform.classpath=${j2ee.server.home}/modules/endorsed/javax.annotation-api.jar:${j2ee.server.home}/modules/endorsed/jaxb-api.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/bean-validator.jar:${j2ee.server.home}/modules/javax.batch-api.jar:${j2ee.server.home}/modules/javax.ejb-api.jar:${j2ee.server.home}/modules/javax.el.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent-api.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent.jar:${j2ee.server.home}/modules/javax.enterprise.deploy-api.jar:${j2ee.server.home}/modules/javax.faces.jar:${j2ee.server.home}/modules/javax.inject.jar:${j2ee.server.home}/modules/javax.interceptor-api.jar:${j2ee.server.home}/modules/javax.jms-api.jar:${j2ee.server.home}/modules/javax.json.jar:${j2ee.server.home}/modules/javax.mail.jar:${j2ee.server.home}/modules/javax.management.j2ee-api.jar:${j2ee.server.home}/modules/javax.persistence.jar:${j2ee.server.home}/modules/javax.resource-api.jar:${j2ee.server.home}/modules/javax.security.auth.message-api.jar:${j2ee.server.home}/modules/javax.security.jacc-api.jar:${j2ee.server.home}/modules/javax.servlet-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl.jar:${j2ee.server.home}/modules/javax.transaction-api.jar:${j2ee.server.home}/modules/javax.websocket-api.jar:${j2ee.server.home}/modules/javax.ws.rs-api.jar:${j2ee.server.home}/modules/javax.xml.registry-api.jar:${j2ee.server.home}/modules/javax.xml.rpc-api.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.home}/modules/weld-osgi-bundle.jar:${j2ee.server.middleware}/mq/lib/jaxm-api.jar +j2ee.platform.classpath=${j2ee.server.home}/modules/endorsed/javax.annotation-api.jar:${j2ee.server.home}/modules/endorsed/jaxb-api.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/bean-validator.jar:${j2ee.server.home}/modules/cdi-api.jar:${j2ee.server.home}/modules/javax.batch-api.jar:${j2ee.server.home}/modules/javax.ejb-api.jar:${j2ee.server.home}/modules/javax.el.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent-api.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent.jar:${j2ee.server.home}/modules/javax.enterprise.deploy-api.jar:${j2ee.server.home}/modules/javax.faces.jar:${j2ee.server.home}/modules/javax.inject.jar:${j2ee.server.home}/modules/javax.interceptor-api.jar:${j2ee.server.home}/modules/javax.jms-api.jar:${j2ee.server.home}/modules/javax.json.jar:${j2ee.server.home}/modules/javax.mail.jar:${j2ee.server.home}/modules/javax.management.j2ee-api.jar:${j2ee.server.home}/modules/javax.persistence.jar:${j2ee.server.home}/modules/javax.resource-api.jar:${j2ee.server.home}/modules/javax.security.auth.message-api.jar:${j2ee.server.home}/modules/javax.security.jacc-api.jar:${j2ee.server.home}/modules/javax.servlet-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl.jar:${j2ee.server.home}/modules/javax.transaction-api.jar:${j2ee.server.home}/modules/javax.websocket-api.jar:${j2ee.server.home}/modules/javax.ws.rs-api.jar:${j2ee.server.home}/modules/javax.xml.registry-api.jar:${j2ee.server.home}/modules/javax.xml.rpc-api.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.home}/modules/weld-osgi-bundle.jar:${j2ee.server.middleware}/mq/lib/jaxm-api.jar j2ee.platform.embeddableejb.classpath=${j2ee.server.home}/lib/embedded/glassfish-embedded-static-shell.jar j2ee.platform.wscompile.classpath=${j2ee.server.home}/modules/webservices-osgi.jar j2ee.platform.wsgen.classpath=${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/endorsed/jaxb-api.jar diff --git a/IdentService/src/java/org/IdentService/register.java b/IdentService/src/java/org/IdentService/register.java index b31cda0a8ab0e15f87b108d172d4b454dcc0a6bf..f49434004cefe9b9fa4748039ab8982228e465f8 100644 --- a/IdentService/src/java/org/IdentService/register.java +++ b/IdentService/src/java/org/IdentService/register.java @@ -28,7 +28,7 @@ import org.json.simple.JSONObject; */ public class register extends HttpServlet { - RandomString tokenGenerator = new RandomString(7); + RandomString tokenGenerator = new RandomString(5); /** @@ -103,7 +103,6 @@ public class register extends HttpServlet { +email+"\")"; ResultSet rs = stmt.executeQuery(sql); if (!rs.next()){ - String generatedToken = tokenGenerator.nextString(); Calendar cal = Calendar.getInstance(); int hours = cal.get(Calendar.HOUR_OF_DAY); if(hours != 23) @@ -113,7 +112,7 @@ public class register extends HttpServlet { Date dt = cal.getTime(); //token akan expire dalam 20 menit Timestamp ts = new Timestamp(dt.getTime()); - generatedToken += ts.getTime(); + String generatedToken = generateToken(request); //System.out.println("tes1"); sql = "INSERT INTO account(fullname,username,email,password,address,postal_code,phone_number)" @@ -122,7 +121,7 @@ public class register extends HttpServlet { stmt.executeUpdate(sql); - System.out.println("tes1"); + System.out.println("tes1"); sql = "select * from account where (username=\""+username+"\")"; rs = stmt.executeQuery(sql); @@ -166,5 +165,13 @@ public class register extends HttpServlet { public String getServletInfo() { return "Short description"; }// </editor-fold> + + public String generateToken(HttpServletRequest request){ + String token; + String user_agent = request.getParameter("user_agent"); + String ip = request.getParameter("ip"); + token = tokenGenerator.nextString() + "|" + user_agent + '|' + ip; + return token; + } } diff --git a/KAA-JSP/build/web/WEB-INF/classes/org/saleproject/KAA/tokenParser.class b/KAA-JSP/build/web/WEB-INF/classes/org/saleproject/KAA/tokenParser.class index e9947b4f2d90b0b0d65f91b5576095848d3b067e..616683539244637a7013eecf109e7a46c248a286 100644 Binary files a/KAA-JSP/build/web/WEB-INF/classes/org/saleproject/KAA/tokenParser.class and b/KAA-JSP/build/web/WEB-INF/classes/org/saleproject/KAA/tokenParser.class differ diff --git a/KAA-JSP/build/web/catalog.jsp b/KAA-JSP/build/web/catalog.jsp index b8adfec7c8163bb15f8688b4358324062ebb8754..bb83ad564c5ded0e6a7a2b0211f6dca3e31b984e 100644 --- a/KAA-JSP/build/web/catalog.jsp +++ b/KAA-JSP/build/web/catalog.jsp @@ -42,7 +42,24 @@ <!--Application --> <script src="scripts/app.js"></script> - + <script type="text/javascript"> + // Fungsi AJAX untuk memproses likes (tambah, kurang, atau tampilkan) + function getState(username, product_id) { + var xmlhttp = new XMLHttpRequest(); + xmlhttp.onreadystatechange = function () { + if (this.readyState == 4 && this.status == 200) { + var obj = JSON.parse(this.responseText); + if (obj.status === 'ON') { + document.getElementById("status" + username + product_id).innerHTML = "<img style=\"border: none; padding: 0px 10px 0px 0px; float:left\" height=15px width=15px src=\"img/on.png\">"; + } else { + document.getElementById("status" + username + product_id).innerHTML = "<img style=\"border: none; padding: 0px 10px 0px 0px; float:left\" height=15px width=15px src=\"img/off.png\">"; + } + } + }; + xmlhttp.open("GET", "http://localhost:8080/ChatService/RetrieveStatus?username=" + username, true); + xmlhttp.send(); + }; + </script> </head> <body ng-app="chatApp" ng-controller="chatController"> @@ -246,18 +263,10 @@ out.print("<p>No product to be sold.</p>"); } else { for (int i = 0; i < result.size(); i++) { - urlParamChat = "username=" + result.get(i).getUsername(); - RestAPI_consumer consumer2 = new RestAPI_consumer(urlRequest2, urlParamChat); - consumer2.execute(); - responseJSON = consumer2.getOutput(); - if (responseJSON.get("status").equals("ON")) { - out.print("<img style=\"border: none; padding: 0px 10px 0px 0px; float:left\" height=15px width=15px src=\"img/on.png\">"); - out.print("<a href=\"\"><div ng-click=\"setReceiver('" + result.get(i).getUsername() + "')\"><p><b>" + result.get(i).getUsername() + "</a></b><br/>"); - } else { - out.print("<img style=\"border: none; padding: 0px 10px 0px 0px; float:left\" height=15px width=15px src=\"img/off.png\">"); - out.print("<a href=\"\"><div ng-click=\"setReceiver('" + result.get(i).getUsername() + "')\"><p><b>" + result.get(i).getUsername() + "</a></b><br/>"); - } - out.print("added this on " + result.get(i).getDate().getDate() + "</p></div>"); + out.print("<script>setInterval(function(){ getState('" + result.get(i).getUsername() + "','" + result.get(i).getProductId() + "'); }, 1000);</script>"); + out.print("<div id=\"status" + result.get(i).getUsername() + result.get(i).getProductId() +"\"></div>"); + out.print("<a href=\"\"><div ng-click=\"setReceiver('" + result.get(i).getUsername() + "')\"><p><b>" + result.get(i).getUsername() + "</a></b><br/></div>"); + out.print("added this on " + result.get(i).getDate().getDate() + "</p>"); out.print("<hr/>"); out.print("<table>"); out.print("<tr class = \"container\">"); @@ -341,7 +350,7 @@ } } %> - + {{user}} <br> <div class="popup-box chat-popup" id="1" ng-show="isReceiverSet()" style="right: 0px; display: block;"> @@ -351,7 +360,7 @@ <div style="clear: both"></div> </div> <div class="popup-messages"> - + <li ng-repeat="message in messages" style="list-style-type:none"> <div ng-if="(message.name === receiver) && (message.to === user)" class="talk-bubble tri-right left-top"> <div class="talktext"> diff --git a/KAA-JSP/build/web/register.jsp b/KAA-JSP/build/web/register.jsp index 786f725289c8822cf9ee8a2ac67a38198dce5625..a098886236506e0926e612a33eda1764cad87c4e 100644 --- a/KAA-JSP/build/web/register.jsp +++ b/KAA-JSP/build/web/register.jsp @@ -4,6 +4,7 @@ Author : khrs --%> +<%@page import="org.saleproject.KAA.GetIP"%> <%@page import="java.io.OutputStreamWriter"%> <%@page import="java.io.DataOutputStream"%> <%@page import="java.nio.charset.StandardCharsets"%> @@ -30,6 +31,8 @@ String fulladdress = request.getParameter("fulladdress"); String postalcode = request.getParameter("postalcode"); String phonenumber = request.getParameter("phonenumber"); + String userAgent = request.getHeader("user-agent"); + String userIP = GetIP.getClientIpAddress(request); String urlParameters = @@ -39,35 +42,20 @@ "&email="+email+ "&fulladdress=" +fulladdress+ "&postalcode=" + postalcode + - "&phonenumber=" + phonenumber; + "&phonenumber=" + phonenumber+ + "&user_agent=" + userAgent + "&ip=" + userIP; - String urlRequest = "http://localhost:8080/IdentService/register"; - + String urlRequest = "http://localhost:8080/IdentService/register"; obj = new URL(urlRequest); HttpURLConnection con = (HttpURLConnection) obj.openConnection(); con.setDoOutput( true ); con.setRequestMethod( "POST" ); - - /*byte[] postData = urlParameters.getBytes(); - int postDataLength = postData.length; */ - -// con.setRequestProperty( "Content-Type", "application/x-www-form-urlencoded"); - // con.setRequestProperty( "charset", "utf-8"); - //con.setRequestProperty( "Content-Length", Integer.toString( postDataLength )); -/* con.setUseCaches( false ); - try( DataOutputStream wr = new DataOutputStream( con.getOutputStream())) { - wr.write( postData ); - } */ DataOutputStream wr = new DataOutputStream(con.getOutputStream()); wr.writeBytes(urlParameters); wr.flush(); wr.close(); con.setReadTimeout(15*1000); con.connect(); - /* OutputStreamWriter outputWriter = new OutputStreamWriter(con.getOutputStream()); - outputWriter.write(urlParameters); - outputWriter.flush(); */ - BufferedReader br = new BufferedReader(new InputStreamReader((con.getInputStream()))); StringBuilder sb = new StringBuilder(); String output; @@ -89,18 +77,6 @@ else{ message = (String) responseJSON.get("message"); } - - - /* Consuming API using GET method */ -/* String user = request.getParameter("username"); - String pass = request.getParameter("password"); - String urlParameter = "username="+user+"&password="+pass; - //String urlRequest = "http://localhost:8080/IdentService/login?"+ - //urlParameter; - obj = new URL(urlRequest); - //HttpURLConnection con = (HttpURLConnection) obj.openConnection();*/ - - } catch(Exception e){ e.printStackTrace(); @@ -175,6 +151,7 @@ <div style="padding-left: 91%;"> <input type="submit" value="REGISTER"> </div> + <input type="hidden" name="chattoken" id="chattoken"> </form> </div> <div> @@ -244,6 +221,46 @@ } return (true); } - </script> + </script + <!-- Firebase --> + <script src="https://www.gstatic.com/firebasejs/3.6.1/firebase.js"></script> + <script> + var config = { + apiKey: "AIzaSyAQ2WIB6GWOxmtwMdGd8eHawL4PWxK8evU", + authDomain: "tugas-besar-wbd.firebaseapp.com", + databaseURL: "https://tugas-besar-wbd.firebaseio.com", + storageBucket: "tugas-besar-wbd.appspot.com", + messagingSenderId: "1049009619420" + }; + firebase.initializeApp(config); + + messaging = firebase.messaging(); + + messaging.requestPermission() + .then(function () { + console.log('Notification permission granted.'); + return messaging.getToken(); + // TODO(developer): Retrieve an Instance ID token for use with FCM. + // ... + + }) + .then(function (token) { + document.getElementById("chattoken").value = token; + console.log(token); + }) + .catch(function (err) { + console.log('Unable to get permission to notify.', err); + }); + + + var chattoken= messaging.getToken(); + + console.log(chattoken); + + var getChatToken=function(){ + console.log(chattoken); + document.getElementById("chattoken").value = chattoken; + }; + </script> </body> </html> diff --git a/KAA-JSP/build/web/scripts/app.js b/KAA-JSP/build/web/scripts/app.js index 71337e273b04dc4152f0f6c767bcd6d24a93af65..d75f7f2a140b0dc9f5b91915ab13aadd22667ecd 100644 --- a/KAA-JSP/build/web/scripts/app.js +++ b/KAA-JSP/build/web/scripts/app.js @@ -58,19 +58,20 @@ app.controller('chatController', ['$scope','$http','Message', function($scope,$h message: newmessage }; - $scope.fetch = function() { - $scope.code = null; - $scope.response = null; - - $http({method: "GET", url: "localhost:8080/ChatService/SendMessage?", params: paramSend}). + console.log("mau ngirim"); + console.log(paramSend); + + $http({method: "GET", url: "http://localhost:8080/ChatService/SendMessage", params: paramSend}). then(function(response) { + console.log("harusnya berhasil"); + $scope.status = response.status; $scope.data = response.data; }, function(response) { $scope.data = response.data || 'Request failed'; $scope.status = response.status; }); - }; + console.log("berhasil keluar"); }; diff --git a/KAA-JSP/dist/KAA-JSP.war b/KAA-JSP/dist/KAA-JSP.war index 5b796704304f25654bc513b4eecbbde91f91772b..f6c37564ec486e1979698a7128ab7df399bdde62 100644 Binary files a/KAA-JSP/dist/KAA-JSP.war and b/KAA-JSP/dist/KAA-JSP.war differ diff --git a/KAA-JSP/nbproject/private/private.properties b/KAA-JSP/nbproject/private/private.properties index 17b05e1fd355984e3470323a00669e8abef06ddb..28552d4ee798943351d4484319b203bb00c39ea6 100644 --- a/KAA-JSP/nbproject/private/private.properties +++ b/KAA-JSP/nbproject/private/private.properties @@ -1,7 +1,7 @@ -deploy.ant.properties.file=/home/khrs/.netbeans/8.2/config/GlassFishEE6/Properties/gfv3-2049786751.properties +deploy.ant.properties.file=C:\\Users\\Frys\\AppData\\Roaming\\NetBeans\\8.2\\config\\GlassFishEE6\\Properties\\gfv31137312071.properties j2ee.platform.is.jsr109=true -j2ee.server.domain=/home/khrs/glassfish-4.1.1/glassfish/domains/domain1 -j2ee.server.home=/home/khrs/glassfish-4.1.1/glassfish -j2ee.server.instance=[/home/khrs/glassfish-4.1.1/glassfish:/home/khrs/glassfish-4.1.1/glassfish/domains/domain1]deployer:gfv3ee6wc:localhost:4848 -j2ee.server.middleware=/home/khrs/glassfish-4.1.1 +j2ee.server.domain=C:/Users/Frys/GlassFish_Server/glassfish/domains/domain-client +j2ee.server.home=C:/Users/Frys/GlassFish_Server/glassfish +j2ee.server.instance=[C:\\Users\\Frys\\GlassFish_Server\\glassfish;C:\\Users\\Frys\\GlassFish_Server\\glassfish\\domains\\domain-client]deployer:gfv3ee6wc:localhost:4848 +j2ee.server.middleware=C:/Users/Frys/GlassFish_Server user.properties.file=/home/khrs/.netbeans/8.2/build.properties diff --git a/KAA-JSP/nbproject/project.properties b/KAA-JSP/nbproject/project.properties index bc730ea6c1f156db88038de8337500b5e2b71952..3867ee90e62678d5db9ce6a9f680cd49fa662d5c 100644 --- a/KAA-JSP/nbproject/project.properties +++ b/KAA-JSP/nbproject/project.properties @@ -40,9 +40,9 @@ j2ee.platform=1.7-web <<<<<<< HEAD ======= >>>>>>> bcf1435806005cb1ed3347eeb593de560332f805 -j2ee.platform.classpath=${j2ee.server.home}/modules/endorsed/javax.annotation-api.jar:${j2ee.server.home}/modules/endorsed/jaxb-api.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/bean-validator.jar:${j2ee.server.home}/modules/javax.batch-api.jar:${j2ee.server.home}/modules/javax.ejb-api.jar:${j2ee.server.home}/modules/javax.el.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent-api.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent.jar:${j2ee.server.home}/modules/javax.enterprise.deploy-api.jar:${j2ee.server.home}/modules/javax.faces.jar:${j2ee.server.home}/modules/javax.inject.jar:${j2ee.server.home}/modules/javax.interceptor-api.jar:${j2ee.server.home}/modules/javax.jms-api.jar:${j2ee.server.home}/modules/javax.json.jar:${j2ee.server.home}/modules/javax.mail.jar:${j2ee.server.home}/modules/javax.management.j2ee-api.jar:${j2ee.server.home}/modules/javax.persistence.jar:${j2ee.server.home}/modules/javax.resource-api.jar:${j2ee.server.home}/modules/javax.security.auth.message-api.jar:${j2ee.server.home}/modules/javax.security.jacc-api.jar:${j2ee.server.home}/modules/javax.servlet-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl.jar:${j2ee.server.home}/modules/javax.transaction-api.jar:${j2ee.server.home}/modules/javax.websocket-api.jar:${j2ee.server.home}/modules/javax.ws.rs-api.jar:${j2ee.server.home}/modules/javax.xml.registry-api.jar:${j2ee.server.home}/modules/javax.xml.rpc-api.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.home}/modules/weld-osgi-bundle.jar:${j2ee.server.middleware}/mq/lib/jaxm-api.jar -j2ee.platform.classpath=${j2ee.server.home}/modules/endorsed/jaxb-api.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/endorsed/javax.annotation-api.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent-api.jar:${j2ee.server.home}/modules/javax.management.j2ee-api.jar:${j2ee.server.home}/modules/javax.enterprise.deploy-api.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/javax.interceptor-api.jar:${j2ee.server.home}/modules/javax.mail.jar:${j2ee.server.home}/modules/javax.xml.rpc-api.jar:${j2ee.server.home}/modules/javax.resource-api.jar:${j2ee.server.home}/modules/javax.ejb-api.jar:${j2ee.server.home}/modules/javax.websocket-api.jar:${j2ee.server.home}/modules/javax.transaction-api.jar:${j2ee.server.home}/modules/javax.json.jar:${j2ee.server.home}/modules/bean-validator.jar:${j2ee.server.home}/modules/javax.persistence.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jar:${j2ee.server.home}/modules/javax.ws.rs-api.jar:${j2ee.server.home}/modules/cdi-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl.jar:${j2ee.server.home}/modules/javax.el.jar:${j2ee.server.home}/modules/javax.inject.jar:${j2ee.server.home}/modules/weld-osgi-bundle.jar:${j2ee.server.home}/modules/javax.xml.registry-api.jar:${j2ee.server.home}/modules/javax.security.auth.message-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp-api.jar:${j2ee.server.home}/modules/javax.security.jacc-api.jar:${j2ee.server.home}/modules/javax.servlet-api.jar:${j2ee.server.home}/modules/javax.jms-api.jar:${j2ee.server.home}/modules/javax.batch-api.jar:${j2ee.server.home}/modules/javax.faces.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent.jar:${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.middleware}/mq/lib/jaxm-api.jar j2ee.platform.classpath=${j2ee.server.home}/modules/endorsed/jaxb-api.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/endorsed/javax.annotation-api.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent-api.jar:${j2ee.server.home}/modules/javax.management.j2ee-api.jar:${j2ee.server.home}/modules/javax.enterprise.deploy-api.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/javax.interceptor-api.jar:${j2ee.server.home}/modules/javax.mail.jar:${j2ee.server.home}/modules/javax.xml.rpc-api.jar:${j2ee.server.home}/modules/javax.resource-api.jar:${j2ee.server.home}/modules/javax.ejb-api.jar:${j2ee.server.home}/modules/javax.websocket-api.jar:${j2ee.server.home}/modules/javax.transaction-api.jar:${j2ee.server.home}/modules/javax.json.jar:${j2ee.server.home}/modules/bean-validator.jar:${j2ee.server.home}/modules/javax.persistence.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jar:${j2ee.server.home}/modules/javax.ws.rs-api.jar:${j2ee.server.home}/modules/cdi-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl.jar:${j2ee.server.home}/modules/javax.el.jar:${j2ee.server.home}/modules/javax.inject.jar:${j2ee.server.home}/modules/weld-osgi-bundle.jar:${j2ee.server.home}/modules/javax.xml.registry-api.jar:${j2ee.server.home}/modules/javax.security.auth.message-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp-api.jar:${j2ee.server.home}/modules/javax.security.jacc-api.jar:${j2ee.server.home}/modules/javax.servlet-api.jar:${j2ee.server.home}/modules/javax.jms-api.jar:${j2ee.server.home}/modules/javax.batch-api.jar:${j2ee.server.home}/modules/javax.faces.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent.jar:${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.middleware}/mq/lib/jaxm-api.jar +j2ee.platform.classpath=${j2ee.server.home}/modules/endorsed/javax.annotation-api.jar:${j2ee.server.home}/modules/endorsed/jaxb-api.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/bean-validator.jar:${j2ee.server.home}/modules/javax.batch-api.jar:${j2ee.server.home}/modules/javax.ejb-api.jar:${j2ee.server.home}/modules/javax.el.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent-api.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent.jar:${j2ee.server.home}/modules/javax.enterprise.deploy-api.jar:${j2ee.server.home}/modules/javax.faces.jar:${j2ee.server.home}/modules/javax.inject.jar:${j2ee.server.home}/modules/javax.interceptor-api.jar:${j2ee.server.home}/modules/javax.jms-api.jar:${j2ee.server.home}/modules/javax.json.jar:${j2ee.server.home}/modules/javax.mail.jar:${j2ee.server.home}/modules/javax.management.j2ee-api.jar:${j2ee.server.home}/modules/javax.persistence.jar:${j2ee.server.home}/modules/javax.resource-api.jar:${j2ee.server.home}/modules/javax.security.auth.message-api.jar:${j2ee.server.home}/modules/javax.security.jacc-api.jar:${j2ee.server.home}/modules/javax.servlet-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl.jar:${j2ee.server.home}/modules/javax.transaction-api.jar:${j2ee.server.home}/modules/javax.websocket-api.jar:${j2ee.server.home}/modules/javax.ws.rs-api.jar:${j2ee.server.home}/modules/javax.xml.registry-api.jar:${j2ee.server.home}/modules/javax.xml.rpc-api.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.home}/modules/weld-osgi-bundle.jar:${j2ee.server.middleware}/mq/lib/jaxm-api.jar +j2ee.platform.classpath=${j2ee.server.home}/modules/endorsed/javax.annotation-api.jar:${j2ee.server.home}/modules/endorsed/jaxb-api.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/bean-validator.jar:${j2ee.server.home}/modules/cdi-api.jar:${j2ee.server.home}/modules/javax.batch-api.jar:${j2ee.server.home}/modules/javax.ejb-api.jar:${j2ee.server.home}/modules/javax.el.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent-api.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent.jar:${j2ee.server.home}/modules/javax.enterprise.deploy-api.jar:${j2ee.server.home}/modules/javax.faces.jar:${j2ee.server.home}/modules/javax.inject.jar:${j2ee.server.home}/modules/javax.interceptor-api.jar:${j2ee.server.home}/modules/javax.jms-api.jar:${j2ee.server.home}/modules/javax.json.jar:${j2ee.server.home}/modules/javax.mail.jar:${j2ee.server.home}/modules/javax.management.j2ee-api.jar:${j2ee.server.home}/modules/javax.persistence.jar:${j2ee.server.home}/modules/javax.resource-api.jar:${j2ee.server.home}/modules/javax.security.auth.message-api.jar:${j2ee.server.home}/modules/javax.security.jacc-api.jar:${j2ee.server.home}/modules/javax.servlet-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl.jar:${j2ee.server.home}/modules/javax.transaction-api.jar:${j2ee.server.home}/modules/javax.websocket-api.jar:${j2ee.server.home}/modules/javax.ws.rs-api.jar:${j2ee.server.home}/modules/javax.xml.registry-api.jar:${j2ee.server.home}/modules/javax.xml.rpc-api.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.home}/modules/weld-osgi-bundle.jar:${j2ee.server.middleware}/mq/lib/jaxm-api.jar j2ee.platform.embeddableejb.classpath=${j2ee.server.home}/lib/embedded/glassfish-embedded-static-shell.jar j2ee.platform.wscompile.classpath=${j2ee.server.home}/modules/webservices-osgi.jar j2ee.platform.wsgen.classpath=${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/endorsed/jaxb-api.jar diff --git a/KAA-JSP/web/catalog.jsp b/KAA-JSP/web/catalog.jsp index b8adfec7c8163bb15f8688b4358324062ebb8754..bb83ad564c5ded0e6a7a2b0211f6dca3e31b984e 100644 --- a/KAA-JSP/web/catalog.jsp +++ b/KAA-JSP/web/catalog.jsp @@ -42,7 +42,24 @@ <!--Application --> <script src="scripts/app.js"></script> - + <script type="text/javascript"> + // Fungsi AJAX untuk memproses likes (tambah, kurang, atau tampilkan) + function getState(username, product_id) { + var xmlhttp = new XMLHttpRequest(); + xmlhttp.onreadystatechange = function () { + if (this.readyState == 4 && this.status == 200) { + var obj = JSON.parse(this.responseText); + if (obj.status === 'ON') { + document.getElementById("status" + username + product_id).innerHTML = "<img style=\"border: none; padding: 0px 10px 0px 0px; float:left\" height=15px width=15px src=\"img/on.png\">"; + } else { + document.getElementById("status" + username + product_id).innerHTML = "<img style=\"border: none; padding: 0px 10px 0px 0px; float:left\" height=15px width=15px src=\"img/off.png\">"; + } + } + }; + xmlhttp.open("GET", "http://localhost:8080/ChatService/RetrieveStatus?username=" + username, true); + xmlhttp.send(); + }; + </script> </head> <body ng-app="chatApp" ng-controller="chatController"> @@ -246,18 +263,10 @@ out.print("<p>No product to be sold.</p>"); } else { for (int i = 0; i < result.size(); i++) { - urlParamChat = "username=" + result.get(i).getUsername(); - RestAPI_consumer consumer2 = new RestAPI_consumer(urlRequest2, urlParamChat); - consumer2.execute(); - responseJSON = consumer2.getOutput(); - if (responseJSON.get("status").equals("ON")) { - out.print("<img style=\"border: none; padding: 0px 10px 0px 0px; float:left\" height=15px width=15px src=\"img/on.png\">"); - out.print("<a href=\"\"><div ng-click=\"setReceiver('" + result.get(i).getUsername() + "')\"><p><b>" + result.get(i).getUsername() + "</a></b><br/>"); - } else { - out.print("<img style=\"border: none; padding: 0px 10px 0px 0px; float:left\" height=15px width=15px src=\"img/off.png\">"); - out.print("<a href=\"\"><div ng-click=\"setReceiver('" + result.get(i).getUsername() + "')\"><p><b>" + result.get(i).getUsername() + "</a></b><br/>"); - } - out.print("added this on " + result.get(i).getDate().getDate() + "</p></div>"); + out.print("<script>setInterval(function(){ getState('" + result.get(i).getUsername() + "','" + result.get(i).getProductId() + "'); }, 1000);</script>"); + out.print("<div id=\"status" + result.get(i).getUsername() + result.get(i).getProductId() +"\"></div>"); + out.print("<a href=\"\"><div ng-click=\"setReceiver('" + result.get(i).getUsername() + "')\"><p><b>" + result.get(i).getUsername() + "</a></b><br/></div>"); + out.print("added this on " + result.get(i).getDate().getDate() + "</p>"); out.print("<hr/>"); out.print("<table>"); out.print("<tr class = \"container\">"); @@ -341,7 +350,7 @@ } } %> - + {{user}} <br> <div class="popup-box chat-popup" id="1" ng-show="isReceiverSet()" style="right: 0px; display: block;"> @@ -351,7 +360,7 @@ <div style="clear: both"></div> </div> <div class="popup-messages"> - + <li ng-repeat="message in messages" style="list-style-type:none"> <div ng-if="(message.name === receiver) && (message.to === user)" class="talk-bubble tri-right left-top"> <div class="talktext"> diff --git a/KAA-JSP/web/register.jsp b/KAA-JSP/web/register.jsp index 786f725289c8822cf9ee8a2ac67a38198dce5625..a098886236506e0926e612a33eda1764cad87c4e 100644 --- a/KAA-JSP/web/register.jsp +++ b/KAA-JSP/web/register.jsp @@ -4,6 +4,7 @@ Author : khrs --%> +<%@page import="org.saleproject.KAA.GetIP"%> <%@page import="java.io.OutputStreamWriter"%> <%@page import="java.io.DataOutputStream"%> <%@page import="java.nio.charset.StandardCharsets"%> @@ -30,6 +31,8 @@ String fulladdress = request.getParameter("fulladdress"); String postalcode = request.getParameter("postalcode"); String phonenumber = request.getParameter("phonenumber"); + String userAgent = request.getHeader("user-agent"); + String userIP = GetIP.getClientIpAddress(request); String urlParameters = @@ -39,35 +42,20 @@ "&email="+email+ "&fulladdress=" +fulladdress+ "&postalcode=" + postalcode + - "&phonenumber=" + phonenumber; + "&phonenumber=" + phonenumber+ + "&user_agent=" + userAgent + "&ip=" + userIP; - String urlRequest = "http://localhost:8080/IdentService/register"; - + String urlRequest = "http://localhost:8080/IdentService/register"; obj = new URL(urlRequest); HttpURLConnection con = (HttpURLConnection) obj.openConnection(); con.setDoOutput( true ); con.setRequestMethod( "POST" ); - - /*byte[] postData = urlParameters.getBytes(); - int postDataLength = postData.length; */ - -// con.setRequestProperty( "Content-Type", "application/x-www-form-urlencoded"); - // con.setRequestProperty( "charset", "utf-8"); - //con.setRequestProperty( "Content-Length", Integer.toString( postDataLength )); -/* con.setUseCaches( false ); - try( DataOutputStream wr = new DataOutputStream( con.getOutputStream())) { - wr.write( postData ); - } */ DataOutputStream wr = new DataOutputStream(con.getOutputStream()); wr.writeBytes(urlParameters); wr.flush(); wr.close(); con.setReadTimeout(15*1000); con.connect(); - /* OutputStreamWriter outputWriter = new OutputStreamWriter(con.getOutputStream()); - outputWriter.write(urlParameters); - outputWriter.flush(); */ - BufferedReader br = new BufferedReader(new InputStreamReader((con.getInputStream()))); StringBuilder sb = new StringBuilder(); String output; @@ -89,18 +77,6 @@ else{ message = (String) responseJSON.get("message"); } - - - /* Consuming API using GET method */ -/* String user = request.getParameter("username"); - String pass = request.getParameter("password"); - String urlParameter = "username="+user+"&password="+pass; - //String urlRequest = "http://localhost:8080/IdentService/login?"+ - //urlParameter; - obj = new URL(urlRequest); - //HttpURLConnection con = (HttpURLConnection) obj.openConnection();*/ - - } catch(Exception e){ e.printStackTrace(); @@ -175,6 +151,7 @@ <div style="padding-left: 91%;"> <input type="submit" value="REGISTER"> </div> + <input type="hidden" name="chattoken" id="chattoken"> </form> </div> <div> @@ -244,6 +221,46 @@ } return (true); } - </script> + </script + <!-- Firebase --> + <script src="https://www.gstatic.com/firebasejs/3.6.1/firebase.js"></script> + <script> + var config = { + apiKey: "AIzaSyAQ2WIB6GWOxmtwMdGd8eHawL4PWxK8evU", + authDomain: "tugas-besar-wbd.firebaseapp.com", + databaseURL: "https://tugas-besar-wbd.firebaseio.com", + storageBucket: "tugas-besar-wbd.appspot.com", + messagingSenderId: "1049009619420" + }; + firebase.initializeApp(config); + + messaging = firebase.messaging(); + + messaging.requestPermission() + .then(function () { + console.log('Notification permission granted.'); + return messaging.getToken(); + // TODO(developer): Retrieve an Instance ID token for use with FCM. + // ... + + }) + .then(function (token) { + document.getElementById("chattoken").value = token; + console.log(token); + }) + .catch(function (err) { + console.log('Unable to get permission to notify.', err); + }); + + + var chattoken= messaging.getToken(); + + console.log(chattoken); + + var getChatToken=function(){ + console.log(chattoken); + document.getElementById("chattoken").value = chattoken; + }; + </script> </body> </html> diff --git a/KAA-JSP/web/scripts/app.js b/KAA-JSP/web/scripts/app.js index 71337e273b04dc4152f0f6c767bcd6d24a93af65..d75f7f2a140b0dc9f5b91915ab13aadd22667ecd 100644 --- a/KAA-JSP/web/scripts/app.js +++ b/KAA-JSP/web/scripts/app.js @@ -58,19 +58,20 @@ app.controller('chatController', ['$scope','$http','Message', function($scope,$h message: newmessage }; - $scope.fetch = function() { - $scope.code = null; - $scope.response = null; - - $http({method: "GET", url: "localhost:8080/ChatService/SendMessage?", params: paramSend}). + console.log("mau ngirim"); + console.log(paramSend); + + $http({method: "GET", url: "http://localhost:8080/ChatService/SendMessage", params: paramSend}). then(function(response) { + console.log("harusnya berhasil"); + $scope.status = response.status; $scope.data = response.data; }, function(response) { $scope.data = response.data || 'Request failed'; $scope.status = response.status; }); - }; + console.log("berhasil keluar"); }; diff --git a/MarketPlaceService/dist/MarketPlaceService.war b/MarketPlaceService/dist/MarketPlaceService.war index 72a56f1906956d0883b8b0e0ede390c4629b1b44..c4a58ab1945b218b6a178f5efb675e38a8a550b0 100644 Binary files a/MarketPlaceService/dist/MarketPlaceService.war and b/MarketPlaceService/dist/MarketPlaceService.war differ diff --git a/MarketPlaceService/nbproject/private/private.properties b/MarketPlaceService/nbproject/private/private.properties index 17b05e1fd355984e3470323a00669e8abef06ddb..28552d4ee798943351d4484319b203bb00c39ea6 100644 --- a/MarketPlaceService/nbproject/private/private.properties +++ b/MarketPlaceService/nbproject/private/private.properties @@ -1,7 +1,7 @@ -deploy.ant.properties.file=/home/khrs/.netbeans/8.2/config/GlassFishEE6/Properties/gfv3-2049786751.properties +deploy.ant.properties.file=C:\\Users\\Frys\\AppData\\Roaming\\NetBeans\\8.2\\config\\GlassFishEE6\\Properties\\gfv31137312071.properties j2ee.platform.is.jsr109=true -j2ee.server.domain=/home/khrs/glassfish-4.1.1/glassfish/domains/domain1 -j2ee.server.home=/home/khrs/glassfish-4.1.1/glassfish -j2ee.server.instance=[/home/khrs/glassfish-4.1.1/glassfish:/home/khrs/glassfish-4.1.1/glassfish/domains/domain1]deployer:gfv3ee6wc:localhost:4848 -j2ee.server.middleware=/home/khrs/glassfish-4.1.1 +j2ee.server.domain=C:/Users/Frys/GlassFish_Server/glassfish/domains/domain-client +j2ee.server.home=C:/Users/Frys/GlassFish_Server/glassfish +j2ee.server.instance=[C:\\Users\\Frys\\GlassFish_Server\\glassfish;C:\\Users\\Frys\\GlassFish_Server\\glassfish\\domains\\domain-client]deployer:gfv3ee6wc:localhost:4848 +j2ee.server.middleware=C:/Users/Frys/GlassFish_Server user.properties.file=/home/khrs/.netbeans/8.2/build.properties diff --git a/MarketPlaceService/nbproject/project.properties b/MarketPlaceService/nbproject/project.properties index 92afac1b58933b80846abbcadd56c1341a77cc84..e1f402b312c3857d5bcbc9707c6e65ed3d1627b8 100644 --- a/MarketPlaceService/nbproject/project.properties +++ b/MarketPlaceService/nbproject/project.properties @@ -40,9 +40,9 @@ j2ee.platform=1.7-web <<<<<<< HEAD ======= >>>>>>> bcf1435806005cb1ed3347eeb593de560332f805 -j2ee.platform.classpath=${j2ee.server.home}/modules/endorsed/javax.annotation-api.jar:${j2ee.server.home}/modules/endorsed/jaxb-api.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/bean-validator.jar:${j2ee.server.home}/modules/javax.batch-api.jar:${j2ee.server.home}/modules/javax.ejb-api.jar:${j2ee.server.home}/modules/javax.el.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent-api.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent.jar:${j2ee.server.home}/modules/javax.enterprise.deploy-api.jar:${j2ee.server.home}/modules/javax.faces.jar:${j2ee.server.home}/modules/javax.inject.jar:${j2ee.server.home}/modules/javax.interceptor-api.jar:${j2ee.server.home}/modules/javax.jms-api.jar:${j2ee.server.home}/modules/javax.json.jar:${j2ee.server.home}/modules/javax.mail.jar:${j2ee.server.home}/modules/javax.management.j2ee-api.jar:${j2ee.server.home}/modules/javax.persistence.jar:${j2ee.server.home}/modules/javax.resource-api.jar:${j2ee.server.home}/modules/javax.security.auth.message-api.jar:${j2ee.server.home}/modules/javax.security.jacc-api.jar:${j2ee.server.home}/modules/javax.servlet-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl.jar:${j2ee.server.home}/modules/javax.transaction-api.jar:${j2ee.server.home}/modules/javax.websocket-api.jar:${j2ee.server.home}/modules/javax.ws.rs-api.jar:${j2ee.server.home}/modules/javax.xml.registry-api.jar:${j2ee.server.home}/modules/javax.xml.rpc-api.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.home}/modules/weld-osgi-bundle.jar:${j2ee.server.middleware}/mq/lib/jaxm-api.jar j2ee.platform.classpath=${j2ee.server.home}/modules/endorsed/jaxb-api.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/endorsed/javax.annotation-api.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent-api.jar:${j2ee.server.home}/modules/javax.management.j2ee-api.jar:${j2ee.server.home}/modules/javax.enterprise.deploy-api.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/javax.interceptor-api.jar:${j2ee.server.home}/modules/javax.mail.jar:${j2ee.server.home}/modules/javax.xml.rpc-api.jar:${j2ee.server.home}/modules/javax.resource-api.jar:${j2ee.server.home}/modules/javax.ejb-api.jar:${j2ee.server.home}/modules/javax.websocket-api.jar:${j2ee.server.home}/modules/javax.transaction-api.jar:${j2ee.server.home}/modules/javax.json.jar:${j2ee.server.home}/modules/bean-validator.jar:${j2ee.server.home}/modules/javax.persistence.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jar:${j2ee.server.home}/modules/javax.ws.rs-api.jar:${j2ee.server.home}/modules/cdi-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl.jar:${j2ee.server.home}/modules/javax.el.jar:${j2ee.server.home}/modules/javax.inject.jar:${j2ee.server.home}/modules/weld-osgi-bundle.jar:${j2ee.server.home}/modules/javax.xml.registry-api.jar:${j2ee.server.home}/modules/javax.security.auth.message-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp-api.jar:${j2ee.server.home}/modules/javax.security.jacc-api.jar:${j2ee.server.home}/modules/javax.servlet-api.jar:${j2ee.server.home}/modules/javax.jms-api.jar:${j2ee.server.home}/modules/javax.batch-api.jar:${j2ee.server.home}/modules/javax.faces.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent.jar:${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.middleware}/mq/lib/jaxm-api.jar j2ee.platform.classpath=${j2ee.server.home}/modules/endorsed/jaxb-api.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/endorsed/javax.annotation-api.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent-api.jar:${j2ee.server.home}/modules/javax.management.j2ee-api.jar:${j2ee.server.home}/modules/javax.enterprise.deploy-api.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/javax.interceptor-api.jar:${j2ee.server.home}/modules/javax.mail.jar:${j2ee.server.home}/modules/javax.xml.rpc-api.jar:${j2ee.server.home}/modules/javax.resource-api.jar:${j2ee.server.home}/modules/javax.ejb-api.jar:${j2ee.server.home}/modules/javax.websocket-api.jar:${j2ee.server.home}/modules/javax.transaction-api.jar:${j2ee.server.home}/modules/javax.json.jar:${j2ee.server.home}/modules/bean-validator.jar:${j2ee.server.home}/modules/javax.persistence.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jar:${j2ee.server.home}/modules/javax.ws.rs-api.jar:${j2ee.server.home}/modules/cdi-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl.jar:${j2ee.server.home}/modules/javax.el.jar:${j2ee.server.home}/modules/javax.inject.jar:${j2ee.server.home}/modules/weld-osgi-bundle.jar:${j2ee.server.home}/modules/javax.xml.registry-api.jar:${j2ee.server.home}/modules/javax.security.auth.message-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp-api.jar:${j2ee.server.home}/modules/javax.security.jacc-api.jar:${j2ee.server.home}/modules/javax.servlet-api.jar:${j2ee.server.home}/modules/javax.jms-api.jar:${j2ee.server.home}/modules/javax.batch-api.jar:${j2ee.server.home}/modules/javax.faces.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent.jar:${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.middleware}/mq/lib/jaxm-api.jar +j2ee.platform.classpath=${j2ee.server.home}/modules/endorsed/javax.annotation-api.jar:${j2ee.server.home}/modules/endorsed/jaxb-api.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/bean-validator.jar:${j2ee.server.home}/modules/cdi-api.jar:${j2ee.server.home}/modules/javax.batch-api.jar:${j2ee.server.home}/modules/javax.ejb-api.jar:${j2ee.server.home}/modules/javax.el.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent-api.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent.jar:${j2ee.server.home}/modules/javax.enterprise.deploy-api.jar:${j2ee.server.home}/modules/javax.faces.jar:${j2ee.server.home}/modules/javax.inject.jar:${j2ee.server.home}/modules/javax.interceptor-api.jar:${j2ee.server.home}/modules/javax.jms-api.jar:${j2ee.server.home}/modules/javax.json.jar:${j2ee.server.home}/modules/javax.mail.jar:${j2ee.server.home}/modules/javax.management.j2ee-api.jar:${j2ee.server.home}/modules/javax.persistence.jar:${j2ee.server.home}/modules/javax.resource-api.jar:${j2ee.server.home}/modules/javax.security.auth.message-api.jar:${j2ee.server.home}/modules/javax.security.jacc-api.jar:${j2ee.server.home}/modules/javax.servlet-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl.jar:${j2ee.server.home}/modules/javax.transaction-api.jar:${j2ee.server.home}/modules/javax.websocket-api.jar:${j2ee.server.home}/modules/javax.ws.rs-api.jar:${j2ee.server.home}/modules/javax.xml.registry-api.jar:${j2ee.server.home}/modules/javax.xml.rpc-api.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.home}/modules/weld-osgi-bundle.jar:${j2ee.server.middleware}/mq/lib/jaxm-api.jar j2ee.platform.embeddableejb.classpath=${j2ee.server.home}/lib/embedded/glassfish-embedded-static-shell.jar j2ee.platform.wscompile.classpath=${j2ee.server.home}/modules/webservices-osgi.jar j2ee.platform.wsgen.classpath=${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/endorsed/jaxb-api.jar