Apache Avro框架可以在序列化期间处理参数化类型吗?

Apache Avro可以在序列化期间处理参数化类型吗? 当我尝试序列化使用generics的实例时,我看到从Avro框架抛出此exception – org.apache.avro.AvroTypeException: Unknown type: T at org.apache.avro.specific.SpecificData.createSchema(SpecificData.java:255) at org.apache.avro.reflect.ReflectData.createSchema(ReflectData.java:514) at org.apache.avro.reflect.ReflectData.createFieldSchema(ReflectData.java:593) at org.apache.avro.reflect.ReflectData$AllowNull.createFieldSchema(ReflectData.java:75) at org.apache.avro.reflect.ReflectData.createSchema(ReflectData.java:472) at org.apache.avro.specific.SpecificData.getSchema(SpecificData.java:189) 我尝试序列化的类看起来像这样 public class Property { private T propertyValue; } 我正在尝试根据传入的POJO实例动态生成架构。 我的序列化代码如下所示 – ByteArrayOutputStream os = new ByteArrayOutputStream(); ReflectData reflectData = ReflectData.AllowNull.get(); Schema schema = reflectData.getSchema(propertyValue.getClass()); DatumWriter writer = new ReflectDatumWriter(schema); Encoder encoder = EncoderFactory.get().jsonEncoder(schema, os); […]

在Tomcat 8.0中启用CORS响应筛选器

我试图使用相当基本的jQuery.ajax POST请求从另一个服务器(跨源)调用一个服务器上的Web服务。 return $.ajax({ type: “POST”, url: “http://dev.hostname.com/ws/account/example1@example.com?property_id=1&custnum=123456″, dataType:”json” }); 我总是得到以下error响应… XMLHttpRequest无法加载http://dev.hostname.com/ws/account/example1@example.com?property_id=1&custnum=123456 。 请求的资源上不存在“Access-Control-Allow-Origin”标头。 原因http://localhost:63342因此不允许访问。 Web服务是在Apache Tomcat/8.0.8上托管的基于Java构建的基于Jersey的Web服务。 我曾尝试将请求作为JSONP发送,但在尝试处理promise对象的回调时遇到了问题。 然而,这是另一篇文章……作为替代方案,我决定研究实施CORS Response解决方案。 现在我对Java编程非常陌生,对它不太满意所以请耐心等待。 我已经研究了两种实现CORS的主要解决方案。 一种是构建自定义响应filter。 我无法让它工作但后来发现,因为Tomcat 7.0已经提供了一个filter。 我已经看到了第二个解决方案的几个post,但绝对没有运气。 使用Apache Tomcat文档中提供的指南,我将以下FILTER信息添加到应用程序的web.xml文件中(我也尝试将其添加到root的web.xml中,但它也没有在那里工作)。 CorsFilter org.apache.catalina.filters.CorsFilter cors.allowed.origins * cors.allowed.methods GET,POST,HEAD,OPTIONS,PUT cors.allowed.headers Content-Type,X-Requested-With,accept,Origin,Access-Control-Request-Method,Access-Control-Request-Headers, Last-Modified cors.exposed.headers Access-Control-Allow-Origin,Access-Control-Allow-Credentials cors.support.credentials true CorsFilter /* 因为我使用的是Tomcat 8.0.8 。 我原以为这会起作用,但我仍然会遇到同样的错误。 我错过了什么吗? 谢谢你的帮助。 更新 我在Firefox中调用服务时添加Firebug的头文件。 这是请求标头…… Accept application/json, text/javascript, […]

未找到Android- R.java文件

在使用android项目的时候。我坚持使用R.java文件,即使我清理项目也没有找到(项目—->干净)。但是那个文件仍然没有找到。即使我创建了一个同样的新项目出现问题。 我需要做什么 ? 我期待着能够克服这个问题的宝贵回复

Firebase:从存储和数据库中删除时,存储删除是否应该在存储删除的onSuccessListener中?

假设我想删除Firebase存储中的条目以及Firebase数据库中的元数据。 我应该这样彼此独立地删除它们: @Override public void onDeleteClick(int position) { Upload selectedItem = mUploads.get(position); String selectedKey = selectedItem.getKey(); StorageReference imageRef = FirebaseStorage.getInstance().getReferenceFromUrl(selectedItem.getImageUrl()); imageRef.delete(); mDatabaseRef.child(selectedKey).removeValue(); } 或者我应该将数据库删除部分放入存储删除方法的onSuccessListener中吗? @Override public void onDeleteClick(int position) { Upload selectedItem = mUploads.get(position); final String selectedKey = selectedItem.getKey(); StorageReference imageRef = FirebaseStorage.getInstance().getReferenceFromUrl(selectedItem.getImageUrl()); imageRef.delete().addOnSuccessListener(new OnSuccessListener() { @Override public void onSuccess(Void aVoid) { mDatabaseRef.child(selectedKey).removeValue(); } }); […]

Youtube API V3 Java无需调用浏览器即可上传video

嗨,我希望有人可以帮助我。 我在本地计算机上有一个Java应用程序,我正在尝试将video上传到YouTube。 将video上传到经过身份validation的用户的频道。 使用OAuth 2.0授权请求。 它运作良好。 源代码来自Youtube API V3。 类名是com.google.api.services.samples.youtube.cmdline.data.UploadVideo 虽然我每天运行应用程序,一旦我在video上传到youtube后点击批准,就会首次调用默认浏览器。 第二次不调用默认浏览器。 它运作良好。 但我想在不调用浏览器的情况下,需要将video上传到youtube。 任何的想法 ? 请分享我

在wicket 1.5中如何在页面上打开模态窗口

我正在使用wicket 1.4.x一段时间,这里找到的解决方案工作得很好: 如何在PageLoad上打开ModalDialog但是当我转移到wicket 1.5时,我根本不知道如何在页面加载时创建一个modalwindow弹出窗口。 一段代码看起来像这样: private PlainModalWindow tmpPassChange = new PlainModalWindow( “tmp_pass_change” ); tmpPassChange.add( new OpenWindowOnLoadBehavior() ); tmpPassChange.setInitialHeight( 418 ); tmpPassChange.setResizable( false ); tmpPassChange.setMaskType( ModalWindow.MaskType.SEMI_TRANSPARENT ); tmpPassChange.setPageCreator( new ModalWindow.PageCreator() { private static final long serialVersionUID = 1L; public Page createPage() { return new TmpPassChange( u, tmpPassChange ); } } ); add( tmpPassChange ); 为了解释,我正在检查页面是否有某个参数。 当有一个我在datebase中搜索具有该参数的用户时。 […]

如何将JScrollPane Layout设置为与JTable相同?

Tabel1.setModel(new DefaultTableModel(x,y)); JScrollPane pane = new JScrollPane(Tabel1); 当我运行程序时,滚动窗格看起来比表格大。 如何使滚动窗格布局与表格相同?

开源工具,通过Maven2生成Javadocs,自动UML图如ydoc

我想通过maven的网站生成插件生成javadocs,我希望在javadoc中创建并嵌入自动UML图表。 statsvn项目使用yDoc生成他们的UML文档,但我认为他们正在使用Maven1。 yDoc是一个商业共享软件产品,所以我不确定开源statsvn项目如何与它集成(或者如果有一个免费版本用于javadoc生成)。 示例svnstat yDoc javadoc: ChurnPageMaker.java svnstat包含ydoc作为其Maven1报告生成的插件: project.xml maven-ydoc-plugin … yDoc文档说你可以使用Maven2的自定义javadoc doclet方法(但我无法弄清楚在哪里下载yDoc或者它是免费的)。 似乎statsvn项目正在使用yDoc,所以我猜它是免费的? 是否有任何其他开源Javadoc doclet生成器与Maven2集成以生成带有嵌入式类图的javadoc。

SPARQL(Jena)UPDATE可以通过文字集合(而不是文字)进行参数化吗?

我可以调用参数化的SPARQL UPDATE(如在Jena的ParameterizedSparqlString )将属性设置为几个例如文字值吗? 例如,我有: Set object = new HashSet(Arrays.asList(“literal1”, “literal2”)); 并希望使用SPARQL更新,例如: INSERT { [] property ?object } WHERE {} 构建这些RDF语句: _:SUBJECT property “literal1” . _:SUBJECT property “literal2” . Jena是支持这种类型还是参数化( ParameterizedSparqlString的签名建议不)或者我是否必须通过循环遍历集合和连接字符串来构建SPARQL UPDATE?

无法将JsonNull转换为JsonObject

我想将一个primitve属性从一个JsonObject复制到另一个 JsonObject propertyToBeCopied = source.getAsJsonObject(propertyName); 但我总是遇到这个例外: com.google.gson.JsonNull cannot be cast to com.google.gson.JsonObject 根据文档,应该可以进行演员表,或者我错了吗?