Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [e4-dev] localize buttons and text

Sorry tom it was the batik problem again, when I re-launched it
brought them back to 1.7.
Thanks very much for your help.
Greatly appreciated.
Deirdre.
On 6/9/11, Deidre Stankard <deirdrestankard@xxxxxxxxx> wrote:
> That is brill thanks.
> But of course nothing works out for me!
> I am getting the following errors:
> !SESSION 2011-06-09 19:37:40.000
> -----------------------------------------------
> eclipse.buildId=unknown
> java.version=1.6.0_02
> java.vendor=Sun Microsystems Inc.
> BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=de
> Framework arguments:  -product de.vogella.e4.todo.product
> Command-line arguments:  -product de.vogella.e4.todo.product -data
> C:\Documents and Settings\Deirdre
> Stankard\Desktop\v11/../runtime-Todo.product -dev file:C:/Documents
> and Settings/Deirdre
> Stankard/Desktop/v11/.metadata/.plugins/org.eclipse.pde.core/Todo.product/dev.properties
> -os win32 -ws win32 -arch x86 -consoleLog
>
> !ENTRY org.eclipse.osgi 4 0 2011-06-09 19:37:42.140
> !MESSAGE An error occurred while automatically activating bundle
> org.eclipse.emf.ecore (35).
> !STACK 0
> org.osgi.framework.BundleException: Exception in
> org.eclipse.emf.ecore.plugin.EcorePlugin$Implementation.start() of
> bundle org.eclipse.emf.ecore.
> 	at
> org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:734)
> 	at
> org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:683)
> 	at
> org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381)
> 	at
> org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:299)
> 	at
> org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:440)
> 	at
> org.eclipse.osgi.internal.loader.BundleLoader.setLazyTrigger(BundleLoader.java:268)
> 	at
> org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:107)
> 	at
> org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:462)
> 	at
> org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216)
> 	at
> org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:400)
> 	at
> org.eclipse.osgi.internal.loader.SingleSourcePackage.loadClass(SingleSourcePackage.java:35)
> 	at
> org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:473)
> 	at
> org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:429)
> 	at
> org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:417)
> 	at
> org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
> 	at java.lang.ClassLoader.loadClass(Unknown Source)
> 	at java.lang.ClassLoader.loadClassInternal(Unknown Source)
> 	at java.lang.Class.getDeclaredConstructors0(Native Method)
> 	at java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
> 	at java.lang.Class.getDeclaredConstructors(Unknown Source)
> 	at
> org.eclipse.e4.core.internal.di.InjectorImpl.internalMake(InjectorImpl.java:279)
> 	at
> org.eclipse.e4.core.internal.di.InjectorImpl.make(InjectorImpl.java:237)
> 	at
> org.eclipse.e4.core.contexts.ContextInjectionFactory.make(ContextInjectionFactory.java:153)
> 	at
> org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.createFromBundle(ReflectionContributionFactory.java:90)
> 	at
> org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.doCreate(ReflectionContributionFactory.java:64)
> 	at
> org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.create(ReflectionContributionFactory.java:53)
> 	at
> org.eclipse.e4.ui.internal.workbench.swt.E4Application.loadApplicationModel(E4Application.java:343)
> 	at
> org.eclipse.e4.ui.internal.workbench.swt.E4Application.createE4Workbench(E4Application.java:215)
> 	at
> org.eclipse.e4.ui.internal.workbench.swt.E4Application.start(E4Application.java:130)
> 	at
> org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
> 	at
> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
> 	at
> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
> 	at
> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344)
> 	at
> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> 	at java.lang.reflect.Method.invoke(Unknown Source)
> 	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
> 	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
> 	at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
> 	at org.eclipse.equinox.launcher.Main.main(Main.java:1386)
> Caused by: java.lang.NoClassDefFoundError:
> org/eclipse/core/resources/ResourcesPlugin
> 	at
> org.eclipse.emf.ecore.plugin.EcorePlugin$Implementation.start(EcorePlugin.java:520)
> 	at
> org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:711)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at
> org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:702)
> 	... 41 more
> Root exception:
> java.lang.NoClassDefFoundError: org/eclipse/core/resources/ResourcesPlugin
> 	at
> org.eclipse.emf.ecore.plugin.EcorePlugin$Implementation.start(EcorePlugin.java:520)
> 	at
> org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:711)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at
> org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:702)
> 	at
> org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:683)
> 	at
> org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381)
> 	at
> org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:299)
> 	at
> org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:440)
> 	at
> org.eclipse.osgi.internal.loader.BundleLoader.setLazyTrigger(BundleLoader.java:268)
> 	at
> org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:107)
> 	at
> org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:462)
> 	at
> org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216)
> 	at
> org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:400)
> 	at
> org.eclipse.osgi.internal.loader.SingleSourcePackage.loadClass(SingleSourcePackage.java:35)
> 	at
> org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:473)
> 	at
> org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:429)
> 	at
> org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:417)
> 	at
> org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
> 	at java.lang.ClassLoader.loadClass(Unknown Source)
> 	at java.lang.ClassLoader.loadClassInternal(Unknown Source)
> 	at java.lang.Class.getDeclaredConstructors0(Native Method)
> 	at java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
> 	at java.lang.Class.getDeclaredConstructors(Unknown Source)
> 	at
> org.eclipse.e4.core.internal.di.InjectorImpl.internalMake(InjectorImpl.java:279)
> 	at
> org.eclipse.e4.core.internal.di.InjectorImpl.make(InjectorImpl.java:237)
> 	at
> org.eclipse.e4.core.contexts.ContextInjectionFactory.make(ContextInjectionFactory.java:153)
> 	at
> org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.createFromBundle(ReflectionContributionFactory.java:90)
> 	at
> org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.doCreate(ReflectionContributionFactory.java:64)
> 	at
> org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.create(ReflectionContributionFactory.java:53)
> 	at
> org.eclipse.e4.ui.internal.workbench.swt.E4Application.loadApplicationModel(E4Application.java:343)
> 	at
> org.eclipse.e4.ui.internal.workbench.swt.E4Application.createE4Workbench(E4Application.java:215)
> 	at
> org.eclipse.e4.ui.internal.workbench.swt.E4Application.start(E4Application.java:130)
> 	at
> org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
> 	at
> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
> 	at
> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
> 	at
> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344)
> 	at
> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> 	at java.lang.reflect.Method.invoke(Unknown Source)
> 	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
> 	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
> 	at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
> 	at org.eclipse.equinox.launcher.Main.main(Main.java:1386)
>
> !ENTRY org.eclipse.osgi 4 0 2011-06-09 19:37:42.156
> !MESSAGE Application error
> !STACK 1
> java.lang.NoClassDefFoundError: org/eclipse/emf/ecore/resource/Resource
> 	at java.lang.Class.getDeclaredConstructors0(Native Method)
> 	at java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
> 	at java.lang.Class.getDeclaredConstructors(Unknown Source)
> 	at
> org.eclipse.e4.core.internal.di.InjectorImpl.internalMake(InjectorImpl.java:279)
> 	at
> org.eclipse.e4.core.internal.di.InjectorImpl.make(InjectorImpl.java:237)
> 	at
> org.eclipse.e4.core.contexts.ContextInjectionFactory.make(ContextInjectionFactory.java:153)
> 	at
> org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.createFromBundle(ReflectionContributionFactory.java:90)
> 	at
> org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.doCreate(ReflectionContributionFactory.java:64)
> 	at
> org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.create(ReflectionContributionFactory.java:53)
> 	at
> org.eclipse.e4.ui.internal.workbench.swt.E4Application.loadApplicationModel(E4Application.java:343)
> 	at
> org.eclipse.e4.ui.internal.workbench.swt.E4Application.createE4Workbench(E4Application.java:215)
> 	at
> org.eclipse.e4.ui.internal.workbench.swt.E4Application.start(E4Application.java:130)
> 	at
> org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
> 	at
> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
> 	at
> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
> 	at
> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344)
> 	at
> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> 	at java.lang.reflect.Method.invoke(Unknown Source)
> 	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
> 	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
> 	at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
> 	at org.eclipse.equinox.launcher.Main.main(Main.java:1386)
> An error has occurred. See the log file
>
>
> Would that be cause because I am doing translation aswel in the
> Application.e4xmi using the '%' command??
> Can I do both at the same time?
>
> Deirdre.
> On 6/9/11, Tom Schindl <tom.schindl@xxxxxxxxxxxxxxx> wrote:
>> Hi,
>>
>> The process is like this (these are the manual steps you can let the IDE
>> extract the strings for you):
>>
>> a) Create a "Messages.properties"-File in package "foo"
>> b) Create a Java-Class-File "Messages.java" in package "foo"
>> c) Create an entry like "MyPart_Label=Hello" in the Messages.properties
>> d) Create a field "String MyPart_Label" in your Messages.java
>> e) Add a dependency to "org.eclipse.e4.tools.services" to your
>>    MANIFEST.MF
>> f) Modify your Part-Class from something like this:
>>
>> -------8<-------
>> public class MyPart {
>>   @Inject
>>   public MyPart(Composite parent) {
>>    // ...
>>    title = new Label(parent, SWT.CENTER);
>>    GridData titleLData = new GridData();
>>    titleLData.heightHint = 69;
>>    titleLData.grabExcessVerticalSpace = true;
>>    titleLData.verticalAlignment = GridData.BEGINNING;
>>    titleLData.grabExcessHorizontalSpace = true;
>>    titleLData.horizontalAlignment = GridData.FILL;
>>    title.setLayoutData(titleLData);
>>    title.setText("Hello");
>>    title.setData("org.eclipse.e4.ui.css.id", "SeparatorLabel");
>>   }
>> }
>> -------8<-------
>>
>> To something like this:
>> -------8<-------
>> public class MyPart {
>>   @Inject
>>   public MyPart(Composite comp, @Translation Messages messages) {
>>    // ...
>>    title = new Label(parent, SWT.CENTER);
>>    GridData titleLData = new GridData();
>>    titleLData.heightHint = 69;
>>    titleLData.grabExcessVerticalSpace = true;
>>    titleLData.verticalAlignment = GridData.BEGINNING;
>>    titleLData.grabExcessHorizontalSpace = true;
>>    titleLData.horizontalAlignment = GridData.FILL;
>>    title.setLayoutData(titleLData);
>>    title.setText(messages.MyPart_Label);
>>    title.setData("org.eclipse.e4.ui.css.id", "SeparatorLabel");
>>   }
>> }
>> -------8<-------
>>
>> That's it. Don't forget to update your launch config and .product after
>> having added the new org.eclipse.e4.tools.services dependency
>>
>> Tom
>>
>> Am 09.06.11 20:06, schrieb Deidre Stankard:
>>> yes I do think I will do it the way you do your modeltooling but I am
>>> a little confused of how it is working.
>>> Say for example I have a label called like such:
>>>                 title = new Label(parent, SWT.CENTER);
>>> 		GridData titleLData = new GridData();
>>> 		titleLData.heightHint = 69;
>>> 		titleLData.grabExcessVerticalSpace = true;
>>> 		titleLData.verticalAlignment = GridData.BEGINNING;
>>> 		titleLData.grabExcessHorizontalSpace = true;
>>> 		titleLData.horizontalAlignment = GridData.FILL;
>>> 		title.setLayoutData(titleLData);
>>> 		title.setText("Hello");
>>> 		title.setData("org.eclipse.e4.ui.css.id", "SeparatorLabel");
>>>
>>> To be able to change the text within the label from Hello to say
>>> french. How can I call title in the .properties?
>>>
>>> Deirdre.
>>>
>>> On 6/8/11, Tom Schindl <tom.schindl@xxxxxxxxxxxxxxx> wrote:
>>>> There are 2 possibilties:
>>>> * doing it in the 3.x way using NLS-System
>>>> * doing it like my modeltooling does it
>>>>
>>>> -http://dev.eclipse.org/viewcvs/viewvc.cgi/e4/org.eclipse.e4.tools/bundles/org.eclipse.e4.tools.emf.ui/src/org/eclipse/e4/tools/emf/ui/internal/common/ModelEditor.java?view=markup
>>>>
>>>> -http://dev.eclipse.org/viewcvs/viewvc.cgi/e4/org.eclipse.e4.tools/bundles/org.eclipse.e4.tools.emf.ui/src/org/eclipse/e4/tools/emf/ui/internal/Messages.java?view=markup
>>>>
>>>> -http://dev.eclipse.org/viewcvs/viewvc.cgi/e4/org.eclipse.e4.tools/bundles/org.eclipse.e4.tools.emf.ui/src/org/eclipse/e4/tools/emf/ui/internal/Messages.properties?view=markup
>>>>
>>>> I think my way of doing it is better because:
>>>> a) messages don't stay in memory for ever
>>>> b) it will support multiple locales at once and dynamic language
>>>>    switching
>>>>
>>>> Tom
>>>>
>>>> Am 08.06.11 21:41, schrieb Deidre Stankard:
>>>>> Hi,
>>>>>
>>>>> I am undergoing localization in my project in eclipse 4.1 and I can
>>>>> localize trimmed windows and on my toolbar etc which are all done in
>>>>> the
>>>>> application.e4xmi using the '%' call in the label.
>>>>> I am just wondering can localization be used in eclipse 4.1 with names
>>>>> on my buttons and text within my GUI as these are called in my java
>>>>> files? and if so how?
>>>>>
>>>>> Regards,
>>>>> Deirdre.
>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> e4-dev mailing list
>>>>> e4-dev@xxxxxxxxxxx
>>>>> https://dev.eclipse.org/mailman/listinfo/e4-dev
>>>>
>>>> _______________________________________________
>>>> e4-dev mailing list
>>>> e4-dev@xxxxxxxxxxx
>>>> https://dev.eclipse.org/mailman/listinfo/e4-dev
>>>>
>>> _______________________________________________
>>> e4-dev mailing list
>>> e4-dev@xxxxxxxxxxx
>>> https://dev.eclipse.org/mailman/listinfo/e4-dev
>>
>> _______________________________________________
>> e4-dev mailing list
>> e4-dev@xxxxxxxxxxx
>> https://dev.eclipse.org/mailman/listinfo/e4-dev
>>
>


Back to the top