AvroSchema не может быть решена - PullRequest
0 голосов
/ 13 марта 2019

У меня есть одно сомнение в AvroSchema, я создаю Java-программу, в которой AvroSchema является типом схемы. В этой строке ").Создайте(); Первым параметром метода newProducer является схема, здесь мы передаем одну AvroSchema класса Foo, но ошибка ее выдачи AvroSchema не может быть устранена.

import java.util.concurrent.TimeUnit;

import org.apache.pulsar.client.api.Consumer;
import org.apache.pulsar.client.api.Message;
import org.apache.pulsar.client.api.Producer;
import org.apache.pulsar.client.api.PulsarClient;
import org.apache.pulsar.client.api.PulsarClientException;
import org.apache.pulsar.client.api.SubscriptionType;

public class Test {

public static class Foo {
   private int field1 = 1;
   private String field2;
   private long field3;
public void setField1(int i) {
    // TODO Auto-generated method stub
    field1 = i;
}
public void setField2(String string) {
    // TODO Auto-generated method stub
    field2 = string;
}
public void setField3(long currentTimeMillis) {
    // TODO Auto-generated method stub
    field3 = currentTimeMillis;
}
}

public static void main(String[] args) throws Exception {
   PulsarClient pulsarClient = PulsarClient.builder().serviceUrl("pulsar://localhost:6650").build();
   Producer<Foo> producer = pulsarClient.newProducer(AvroSchema.of(Foo.class)).topic("test_topic").create();

   for (int i = 0; i < 1000; i++) {
       Foo foo = new Foo();
       foo.setField1(i);
       foo.setField2("foo" + i);
       foo.setField3(System.currentTimeMillis());
       producer.newMessage().value(foo).send();
   }
   producer.close();
   pulsarClient.close();
}
}

Я следую https://pulsar.apache.org/docs/en/sql-getting-started/ Этот URL-адрес для реализации подключения Пульсар SQL. Что будет причиной этой проблемы? Заранее спасибо !!

1 Ответ

0 голосов
/ 26 апреля 2019

Я не вижу import org.apache.pulsar.client.impl.schema.AvroSchema; в вашем коде, я думаю, что это проблема.Если нет, можете ли вы опубликовать все исключения, пожалуйста?

...