пользовательские свойства сообщений в фреймворке Scala Play для удаления жестко закодированной строки

1

этот ниже код для получения значения ключевого слова из текстового файла отлично работает в localhost. но когда я помещаю этот код в сервер AWS, он работает только иногда. иногда он возвращает value for keyword но в основном возвращает null

package models
import java.io.FileInputStream
import java.io.FileOutputStream
import java.util.Properties
import scala.language.postfixOps

object MsgModel {

  def getKeyword(msgKeyWord: String) = {
    var fileInput = new FileInputStream("./conf/keywords");
    val properties = new Properties
    properties.load(fileInput);

    var out = new FileOutputStream("./conf/keywords");
    properties.store(out, null);
    val Point = properties.getProperty(msgKeyWord)

    val key = properties.keySet()
    val data = Point
    fileInput.close();
    out.close();
    data
  }
}

несколько раз

MsgModel.getkeyword("jid")//some times returns jid, which is expected
MsgModel.getkeyword("jid")//some times return null

file: keywords.txt

jid=jid

почему это работает иногда?

Теги:
playframework
file-io
internationalization

1 ответ

1

Я подозреваю, что это проблема с отсутствием файла, присутствующего на одном из базовых серверов, на который трассировщик нагрузки AWS направляет ваш трафик. Не могли бы вы попытаться вернуть IP-адрес или уникальный идентификатор системы вместе с вашим результатом и заметить, отличаются ли они в случае ожидаемого результата и нулевого значения?

  • 0
    извините, я не понял, не Could you try to return the IP or some unique identifier of the system along with your result . что это значит?
  • 0
    Как я могу убедиться, что файл присутствует базовых серверов
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню