Как конвертировать MAC-адрес в длинный в Javascript?

Мой код Javascript:

    function singleCopySave()
    {   
        var sam1="00:A0:C9:14:C8:29";
        var mac=toLrad.split(":").map(Integer.parseInt(_,16)).foldLeft(0L) {case (acc,item) => acc*256+item};

        var JSONObject = {};
        JSONObject["toLrad"]=sam1;
        var jsonData=dojo.toJson(JSONObject);
        dojo.xhrPost({
               url :"/unified/singleCopy", 
               preventCache:true,
               handleAs: "text", 
               postData:jsonData,
               headers: {"Content-Type": "application/json"},
               sync:true,   
               load: function(response, ioArgs)
                {
                retVal = response;
                },
               error: function(errorResponse, ioArgs)
                {

                }

               });
            }

Мой код Java REST выглядит следующим образом:

@POST
@Path("/singleCopy")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.TEXT_PLAIN)
public String singleApCopy(sampleDTO dto,@Context HttpServletRequest request, @Context HttpServletResponse response) {
    long toLradId = dto.getToLrad();
return "success";

Это не попадает в REST URL. Ошибка при преобразовании строкового значения в long. Может ли кто-нибудь помочь мне разобраться с синтаксической проблемой при конвертации в long? Или есть способ конвертировать MAC-адрес в DTO.java?

1 ответ

Попробуй это

var mac= parseInt(sam1.split(':').join(''), 16);

var JSONObject = {};
JSONObject["toLrad"]=mac;

Вы должны отправить JSON собственности toLrad пока он сможет конвертировать в Java метод

Другие вопросы по тегам