获取JAXB异常,例如"两个类具有相同的XML类型名称......",
这是例外细节:
线程"main"中的异常com.sun.xml.internal.bind.v2.runtime.IllegalAnnotationsException:IllegalAnnotationExceptions的1个计数两个类具有相同的XML类型名称"city".使用@ XmlType.name和@ XmlType.namespace为它们分配不同的名称.此问题与以下位置有关:com.model.City的com.model.City com.model.City com.model.Address.getCurrentCity()at com.model.Address此问题与以下位置有关:at com.common公共com.common.City com.model.Address.getPreviousCity()at com.model.Address
at com.sun.xml.internal.bind.v2.runtime.IllegalAnnotationsException $ Builder.check(Unknown Source)at com.sun.xml.internal.bind.v2.runtime.JAXBContextImpl.getTypeInfoSet(Unknown Source)at com.sun com.sun.xml.internal上的com.sun.xml.internal.bind.v2.runtime.JAXBContextImpl $ JAXBContextBuilder.build(未知来源)中的.xml.internal.bind.v2.runtime.JAXBContextImpl.(未知来源).位于sun.reflect.NativeMethodAccessorImpl的sun.reflect.NativeMethodAccessorImpl.invoke0(本地方法)的com.sun.xml.internal.bind.v2.ContextFactory.createContext(未知来源)中的bind.v2.ContextFactory.createContext(未知来源).在javax.xml.bind.ContextFinder的java.lang.reflect.Method.invoke(未知来源)的sun.reflect.DelegatingMethodAccessorImpl.invoke(未知来源)中调用(未知来源).来自javax.xml.bind.JAXBContext.newInstance(未知来源)的javax.xml.bind.ContextFinder.find(未知来源)中的newInstance(未知来源)位于com的javax.xml.bind.JAXBContext.newInstance(未知来源). PojoToXSD.main(PojoToXSD.java:17)
package **com.model**; ---->this package contains 'Address' class and 'City' class
public class Address {
private String areaName;
private City currentCity;
private com.common.City previousCity;
}
package com.model;
public class City {
private String cityName;
}
Run Code Online (Sandbox Code Playgroud)
"com.common"包中的另一个城市类.
package **com.common**;
public class City {
private String pinCode;
}
Run Code Online (Sandbox Code Playgroud)
我们需要创建XSD并需要使用项目中的现有代码进行编组和解组(如上面的示例代码),代码没有任何注释,如"@ XmlRootElement/@ XmlType",我们无法更改源代码.
我想知道是否有任何解决方案可以解决上述问题或任何其他方法来创建XSD和编组/解组(如MOXy..etc)?
如果我能从任何一个人那里得到解决方案,那将是很好的....请提前感谢.
谢谢,
萨蒂亚.
最近我刚刚在java中遇到错误
Exception in thread "main" java.lang.NoSuchMethodError: main
Run Code Online (Sandbox Code Playgroud)
即使我的班级只有3行代码.
public class Test{
public static void main(String[] args){
System.out.println("hello");
}
}
Run Code Online (Sandbox Code Playgroud)
我想知道为什么会发生这种情况,但后来我知道有一个公共类String我曾在同一个包中尝试过和创建过.
所以现在出现的新问题是在这种情况下会发生什么,虽然String不是keyword
在java中定义的(你可以在你的代码中使用)
然后我刚从包中删除了String.java和String.class文件,但听起来很奇怪你也不能使用String类.
问题:java是否优先考虑我们的自定义类?
我想要分割",,,"
为4的阵列""
使用String.split()
这是我的代码:
String str = ",,,";
String[] tokens = str.split(",");
Run Code Online (Sandbox Code Playgroud)
但是,结果标记是一个空数组:[],而不是""
(["","","",""])
我想要的数组4 .
我已经测试过改变了str
一下:
String str = ",,,1";
String[] tokens = str.split(",");
Run Code Online (Sandbox Code Playgroud)
这次结果令牌是["","","","1"]
.这接近我想要的,但我真的不想在进行拆分之前添加这个"1".
问题基本上是,String.split()
如果它只包含空元素,它将返回一个空数组""
.
你能帮忙解决问题吗?
我的Datapicker有问题
我使用代码获取如下所示的日期,月份和年份
DatePicker datePicker;
datePicker = (DatePicker) findViewById(R.id.dateselect);
int day = datePicker.getDayOfMonth();
int month= datePicker.getMonth() + 1;
int year = datePicker.getYear();
Run Code Online (Sandbox Code Playgroud)
但是当我打印日期时,它显示的值为7而不是07,而月份则显示值2而不是02
我希望这些整数数据采用日期格式,即; 例如:02-02-2013,24-12-2013
有什么可能吗????
我想它与新println()
行功能('\n'
)相关,但是在缩写的基于字母的形式中,这nl
不是ln
.谢谢你的任何评论.
在我的大学,我的大部分课程都是用Java编写的.我最近也在暑期实习中学习了C#(以及Visual Studio环境).现在我正在参加计算机图形学课程,教授课程的研究生更愿意使用C++通过GLUT访问OpenGL绑定.
有没有人有任何关于如何从Java/C#转换到C++的良好资源?显然,指针将是一个大问题,但我应该注意的任何其他事情?任何教程,指南等都会非常有用!
谢谢!
我需要在Jersey上做一个代理API服务.我需要在泽西方法中拥有完整的请求URL.我不想指定所有可能的参数.
例如:
@GET
@Produces({MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON})
@Path("/media.json")
public String getMedia( ){
// here I want to get the full request URL like /media.json?param1=value1¶m2=value2
}
Run Code Online (Sandbox Code Playgroud)
我该怎么做?
我用两个参数开始一个新活动.
Intent intent = new Intent(WebTestActivity.this, MainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_CLEAR_TOP);
Uri uri = Uri.parse(url);
intent.setData(uri);
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)
而赶uri
在onNewIntent
方法.
@Override
public void onNewIntent(Intent intent) { //calls twice
super.onNewIntent(intent);
Uri uri = intent.getData();
new AsynkTask().execute(uri);
}
}
Run Code Online (Sandbox Code Playgroud)
但是这个onNewIntent
方法被称为两次,原因不明,这似乎不对.
我正在开发一个Android应用程序来查找用户提供的出生日期的年龄.三个编辑文本是一天一个,另外两个月和年.我从这个链接获得了代码..但我不知道下一步该做什么...我到目前为止我给的代码我创建了...请检查并帮助我...
main_activity.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity" >
<EditText
android:id="@+id/editText1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:layout_marginRight="32dp"
android:layout_marginTop="42dp"
android:ems="10"
android:inputType="date" >
<requestFocus />
</EditText>
<EditText
android:id="@+id/editText2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignRight="@+id/editText1"
android:layout_below="@+id/editText1"
android:layout_marginTop="30dp"
android:ems="10"
android:inputType="date" />
<EditText
android:id="@+id/editText3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignRight="@+id/editText2"
android:layout_below="@+id/editText2"
android:layout_marginTop="24dp"
android:ems="10"
android:inputType="date" />
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/editText3"
android:layout_centerHorizontal="true"
android:layout_marginTop="82dp"
android:onClick="getAge"
android:text="Button" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/button1"
android:layout_below="@+id/button1"
android:layout_marginTop="54dp"
android:text="TextView" />
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
MainActivity.java
public class MainActivity extends Activity {
long a =0;
@Override
protected void onCreate(Bundle savedInstanceState) …
Run Code Online (Sandbox Code Playgroud) 将您的声明i
放在第3行,以便循环变为无限循环.
public class Puzzel3 {
public static void main(String[] args) {
// Line 3
while (i == i + 1) {
System.out.println(i);
}
System.out.println("done");
}
}
Run Code Online (Sandbox Code Playgroud)